プロが教える店舗&オフィスのセキュリティ対策術

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

プログラム経験は、10年以上前にBASICを多少かじった程度ですが、これを機会に、WEB関連のプログラムをがんばって勉強しようと思います。

A 回答 (2件)

ウェブサイトの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)でも出来ますね。
    • good
    • 0
この回答へのお礼

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

phpでもスクレイピングができるようですが、rubyによる方法とで、到達点の違いのようなものがあるのでしょうか?
もし、何かおわかりでしたら、ご教授ください。
よろしくお願いします。

お礼日時:2010/03/14 19:27

>phpでもスクレイピングができるようですが、rubyによる方法とで、到達点の違いのようなものがあるのでしょうか?



PHPのスクレイピング用ライブラリはよく知りませんが、出来ることに違いはないと思います。

すでにPHPをよくご存じでない限り、PHPは薦めません。「ウェブアプリケーションにはPHPで書かれた物がたくさんある」以外の長所はないので。今後「出来合いのウェブアプリケーションに手を入れながら使いたい」ということなら知っておいて損はないです。

この回答への補足

> PHPのスクレイピング用ライブラリはよく知りませんが、出来ることに違いはないと思います。

ありがとうございます。
了解です。

> すでにPHPをよくご存じでない限り、PHPは薦めません。「ウェブアプリケーションにはPHPで書かれた物がたくさんある」以外の長所はないので。

キッパリ!ですね。
よろしければ、その理由をもう少し教えてもらえませんか?
気になります。

rubyですが、日本人が開発されたんですね。
こちらも興味津々です。
おすすめの学習方法というか、何かアドバイスがあればお願いしたいです。

補足日時:2010/03/16 07:04
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!