投稿者 るきお  (社会人) 投稿日時 2012/4/22 13:32:57
まず、Yahoo!検索の使用例です。

ugonightさんが、挙げているURLは普通にブラウザーからYahoo検索で検索した場合のURLの説明のようです。


半角英数のみのキーワードであれば下記のプログラムでOKです。
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click

    Using internet As New Net.WebClient

        Dim utf8 = System.Text.Encoding.UTF8
        Dim keyword = "VB"
        Dim query = "http://search.yahoo.co.jp/search?fr=yjdnqp&p=" & keyword & "&ei=UTF-8"

        Dim result As Byte()
        result = internet.DownloadData(query)
        WebBrowser1.DocumentText = utf8.GetString(result)

    End Using

End Sub


全角文字がある場合はエンコードの必要があるので多少手間があります。ugonightさんが、Windows フォーム アプリケーションを使っていると仮定します。VB2005の場合は下記のプログラムをそのまま実行すればうまくいきます。
VB2008以降であれば、コンパイラの詳細設定で対象のフレームワークに「.NET Fremewark xx Client Profile」と書いてある部分を変更し、「.NET Framework xx」にします。たとえば、「.NET Framework 4 Client Profile」を「.NET Framework 4」に変更します。そのあとでSystem.Webに参照設定をして下記コードを実行すると結果が取得できます。

Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
   
    Using internet As New Net.WebClient

        Dim utf8 = System.Text.Encoding.UTF8
        Dim keyword = "Visual Basic 中学校"
        Dim b() As Byte = utf8.GetBytes(keyword)
        Dim encodedKeyword = Web.HttpUtility.UrlEncode(keyword)
        Dim query = "http://search.yahoo.co.jp/search?fr=yjdnqp&p=" & encodedKeyword & "&ei=UTF-8"

        Dim result As Byte()
        result = internet.DownloadData(query)
        WebBrowser1.DocumentText = utf8.GetString(result)

    End Using
End Sub


なお、上記の2つのサンプルはネットワーク構成がシンプルな場合の例です。プロキシーを経由している場合などは追加のコードが必要になります。