APIを使用すれば可能だと思うのですが、APIは制限回数があるようですので、「あたかもブラウザでアクセス」しているようなことは可能でしょうか。また、このようなスクリプトを使うと、それは違法となるのでしょうか。よろしくお願い致します。
これですよね?↓(キーワード“カレー”の検索結果) http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&a... 使用する言語は何でしょうか? PHPでしたらこちらが参考になるかと思います。 『PHPで大手の検索エンジンの検索結果をDB化できますか?』 http://dion.okwave.jp/qa2673841.html こちらでは“著作権法として違反に当たるのではないか”、という回答が寄せられていますがどうなのでしょうか。 私だったら作っちゃいますが… ちなみにPHPの知識があればCURLを使用するのは比較的簡単です。 CURLライブラリを読み込んで関数をコールするだけです。 って書きながら、URLを取得するだけならかなり簡単に出来る気がしてきました。 上のURLで基本的に変化するのは q=%E3%82%AB%E3%83%AC%E3%83%BC&num=50 この部分だけだと思います(日本のGoogleであれば)。 この部分は q="URLエンコードしたキーワード" num="ページ当りの件数" ですので、上のURLの q=%E3%82%AB%E3%83%AC%E3%83%BC の部分を q=hatena に編集すると http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&a... 普通に“hatena”で検索した時と同じ結果が表示されます。 あとは日本語用にURLエンコードしてあげればいくと思います。
rubyのmechanizeはどうでしょう。
マニュアルのサンプルに載っています。
http://mono.kmc.gr.jp/~yhara/w/?Ruby-WWW-Mechanize
私は使ったことがないのですがperlのmechanizeでも
同じようなことが出来ると思います。
さらにこれは、すばらしい!
ちょうどRubyを勉強中なのでこちらで頑張りたいと思います。ありがとうございました!
補足ですが、mechanizeはpythonでも使えますね。
http://wwwsearch.sourceforge.net/mechanize/
あとあまりスマートではないかもですが
マニュアルのサンプルに
search_results.links.each {|u| (u.attributes['class'] == 'l') && puts(u.uri) }
とすればおそらくお望みの結果が得られるのではないでしょうか。
ありがとうございます。勉強いたします。
これです、すばらしいです!
PHPは使用したことがないのですが、周辺を調べて勉強してみることにいたします。ありがとうございます!