• ベストアンサー

ネットの情報を自動収集するプログラムを作りたい。

インターネットでの情報収集を、プログラムで自動的に行いたいと考えています。 この場合、どのような勉強が必要なのか教えていただけませんか。おそらく何通りかの答えがあると思いますが、複数の回答を期待しています。 また、ヒントとなる主なコマンドやキーワードがあれば教えてください。自習の参考にさせていただきます。 プログラム経験は、10年以上前にBASICを多少かじった程度ですが、これを機会に、WEB関連のプログラムをがんばって勉強しようと思います。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.1

ウェブサイトのHTMLを解析してデータを抜き出すことを「スクレイピング」と言います。「引っ掻き取る」という意味。 必要な機能は、 (1)ブラウザのシミュレーション(Form送信やCookie処理など)機能 (2)HTMLを解析する機能 私は、Ruby言語+Mechanize(1の機能)+Nokogiri(2の機能)でやってます。Perlで同じようなことを行うことも出来ます。 「Ruby Mechanize Nokogiri」か「Perl Mechanize」で検索するとサンプルなどがあると思います。 例えば、クレジットカードの利用明細取得サンプル。 http://d.hatena.ne.jp/otn/20090815/p1 他のアプローチとしては、VBとかVBScriptでIEを自動運転する(1の機能)。ただしVBに2の機能のライブラリがあるのかどうか知りません。 IEの自動運転はRubyでも出来るので、Ruby+IE(1)+Nokogiri(2)でも出来ますね。

ozy
質問者

お礼

「スクレイピング」というキーワードを知ることができて、視界が広がりました。 「rubyでカンタン!スクレイピング! Hpricot - 駆け抜けろ!プログラマの青春」とか 「phpによるスクレイピング処理入門」 というサイトに出会うことができて、しばらく楽しめそうです。 ほかにも有用なサイトがいっぱいありそうです。 phpでもスクレイピングができるようですが、rubyによる方法とで、到達点の違いのようなものがあるのでしょうか? もし、何かおわかりでしたら、ご教授ください。 よろしくお願いします。

その他の回答 (1)

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

>phpでもスクレイピングができるようですが、rubyによる方法とで、到達点の違いのようなものがあるのでしょうか? PHPのスクレイピング用ライブラリはよく知りませんが、出来ることに違いはないと思います。 すでにPHPをよくご存じでない限り、PHPは薦めません。「ウェブアプリケーションにはPHPで書かれた物がたくさんある」以外の長所はないので。今後「出来合いのウェブアプリケーションに手を入れながら使いたい」ということなら知っておいて損はないです。

ozy
質問者

補足

> PHPのスクレイピング用ライブラリはよく知りませんが、出来ることに違いはないと思います。 ありがとうございます。 了解です。 > すでにPHPをよくご存じでない限り、PHPは薦めません。「ウェブアプリケーションにはPHPで書かれた物がたくさんある」以外の長所はないので。 キッパリ!ですね。 よろしければ、その理由をもう少し教えてもらえませんか? 気になります。 rubyですが、日本人が開発されたんですね。 こちらも興味津々です。 おすすめの学習方法というか、何かアドバイスがあればお願いしたいです。

関連するQ&A