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)でも出来ますね。
「スクレイピング」というキーワードを知ることができて、視界が広がりました。
「rubyでカンタン!スクレイピング! Hpricot - 駆け抜けろ!プログラマの青春」とか
「phpによるスクレイピング処理入門」
というサイトに出会うことができて、しばらく楽しめそうです。
ほかにも有用なサイトがいっぱいありそうです。
phpでもスクレイピングができるようですが、rubyによる方法とで、到達点の違いのようなものがあるのでしょうか?
もし、何かおわかりでしたら、ご教授ください。
よろしくお願いします。
No.2
- 回答日時:
>phpでもスクレイピングができるようですが、rubyによる方法とで、到達点の違いのようなものがあるのでしょうか?
PHPのスクレイピング用ライブラリはよく知りませんが、出来ることに違いはないと思います。
すでにPHPをよくご存じでない限り、PHPは薦めません。「ウェブアプリケーションにはPHPで書かれた物がたくさんある」以外の長所はないので。今後「出来合いのウェブアプリケーションに手を入れながら使いたい」ということなら知っておいて損はないです。
この回答への補足
> PHPのスクレイピング用ライブラリはよく知りませんが、出来ることに違いはないと思います。
ありがとうございます。
了解です。
> すでにPHPをよくご存じでない限り、PHPは薦めません。「ウェブアプリケーションにはPHPで書かれた物がたくさんある」以外の長所はないので。
キッパリ!ですね。
よろしければ、その理由をもう少し教えてもらえませんか?
気になります。
rubyですが、日本人が開発されたんですね。
こちらも興味津々です。
おすすめの学習方法というか、何かアドバイスがあればお願いしたいです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 仕事術・業務効率化 効率的な勉強方法(分野問わず)を教えてください 1 2023/08/16 01:33
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- Windows 10 数年前からWindows10 の Update ができないです。なぜですか? 7 2022/11/09 06:03
- その他(プログラミング・Web制作) VBA 1 2023/01/19 16:19
- デスクトップパソコン 「自動修復でPCを修復できませんでした」と表示されPCが起動しないのですが対処法はありますか? 5 2022/05/13 09:16
- 情報処理技術者・Microsoft認定資格 J検【令和3年度後期 情報システム試験 システムデザインスキル】問題1(2)の解き方を教えてください 1 2022/03/22 18:36
- その他(プログラミング・Web制作) ロボットの作り方を教えて下さい! なにも知らない素人です。 全て自作する場合、どうすればよいでしょう 6 2022/12/18 01:25
- 就職 教員志望24歳のフリーター 民間企業に就職すべきか悩んでいます。 6 2022/07/15 17:33
- その他(プログラミング・Web制作) 大学一年でVBAのプログラミングを勉強しているものです。来週の情報の授業で以下の問題のプログラムを勉 4 2023/01/19 16:15
- その他(ビジネス・キャリア) グーグルの障害者訓練プログラム募集あるがどうだろ?6時間勤務で月収22万!! 1 2023/02/17 20:36
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAで仕様書は書きますか?
-
C言語(gcc), Linux, FTPプログ...
-
逆フーリエ変換のプログラムに...
-
他人が作ったプログラムのメン...
-
きれいなコード vba vbaを勉強...
-
BIOSってどんなCPUで処理してる...
-
プログラム動作時のCPU処理時間...
-
VBからシャットダウンさせる方法
-
Vba 実数および実数タイプの変...
-
C++ で、「)」が必要 というエ...
-
正しい五十音順について
-
VBAにてメール作成した際、一部...
-
あるプログラムのコマンドライ...
-
パックマンプログラム
-
Notepad++の関数リスト表示でC...
-
0除算して、落ちるプログラムと...
-
VBAが止まります。
-
Stuck
-
バッチファイルでUSB挿入時に実行
-
「Outlookが他のプログラムによ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAで仕様書は書きますか?
-
C言語(gcc), Linux, FTPプログ...
-
空elseの有無
-
COBOLのCALL文がいまいちつかめ...
-
プログラミングのコード量に関...
-
VBからシャットダウンさせる方法
-
他人が作ったプログラムのメン...
-
プログラム動作時のCPU処理時間...
-
C++ソースからUMLの設計書を作...
-
変数・オブジェクト名に漢字使用
-
CからJavaの呼び出し
-
ソースコード改造 msペイント
-
プログラミングの読み方、書き...
-
きれいなコード vba vbaを勉強...
-
MFC,C++/CLI,C#の共存
-
ActiveXコントロールの作成(V...
-
BIOSってどんなCPUで処理してる...
-
「ルーチン」という言葉の意味
-
テキストの折り返し処理について
-
Visual Basic で C++ を使いたい!
おすすめ情報