投稿者 魔界の仮面弁士  (社会人) 投稿日時 2009/5/16 04:32:16
> 変換しなくてもOKみたいです。
いいえ、それはたまたまうまく行っただけです。そのまま繋げてはいけません。

たとえば、「=」「&」などの文字が含まれていた場合、その方法では正しく
検索できなくなりますし、日本語の文字などを直接渡すと、文字コード判定に
失敗した場合に、別の文字とみなされてしまう事もあります。URL に渡す文字列は、
 Dim query As String = Uri.EscapeDataString(Text)
などとして事前に変換するようにしましょう。
これは、どのサイトの URL を指定する場合にも言えることです。


> Yahoo! 検索を使うには「EUC」とか言う文字エンコードに変換する必要があるみたいです。
EUC への変換には、System.Text.Encoding を利用する事ができます。

しかし、検索に文字コード変換が必ず必要か、というとそうでもありません。
Google や Yahoo! の検索用 URL には、文字コード指定用のパラメータが用意されているからです。
Dim url As String = "http://search.yahoo.co.jp/search?fr=yjdnqp&ei=UTF-8&p=" & query

Yahoo! の場合は ei がそれにあたります。各パラメータの意味については、下記で確認してください。
http://developer.yahoo.co.jp/other/query_parameters/search/websearch.html



この他、検索結果を直接データとして受け取るための API も用意されています。
興味があれば、これらの方法についても調べてみてください。

http://developer.yahoo.co.jp/webapi/search/websearch/v1/websearch.html
http://www.google.com/apis/