Javascriptフレームワーク CasperJS 基本的な使い方(4) Webスクレイピングしてみる


casperjs


CasperJSの基本的な使い方を具体的なサンプルプログラムで紹介したいと思います。インストール済みという前提で話を進めます。まだインストールしていない場合はこちらを参考にインストールしてください。
Macにcasperjsをインストール
Windowsにcasperjsをインストール

実際にCasperJSを使用する場合、複数のWebページにアクセスして、各ページごとに処理をしていく場合がほとんどだと思います。そのようなケースを想定したサンプルプログラムを紹介したいと思います。以下ののYahooのニュース・トピックを対象とします。
スクリーンショット 2015-11-03 15.28.02

ページのリンクをたどっていく一番簡単な例

実行結果

ニュースの1番目と2番目のページに遷移して各ページの画面キャプチャを取得しています。ニュースの全てに対して画面キャプチャを取得する場合、上記のように全てを記述しても良いのですが効率が悪いのと、ニュースの数がいくつあるかわからない(または変動する)場合はこのやり方は使えません。いろいろなやり方があると思いますが、僕はこういう場合はカスタムイベントを作るやり方で対処しています。

ページのリンクをたどっていく実践的な例

実行結果

カスタムイベントは

と定義して

で呼び出す(発行する)ことができます。

上記の例ではカスタムイベント内でカスタムイベントを発行することを繰り返してループさせています。ページのキャプチャでなく記事そのものを取得すればWebページのスクレイピングが実現できると思います。

CasperJSについて書かれている本

CasperJSについて詳しく書かれている本。Amazonのサイトで本書の目次を見ることができるので内容を確認して役に立ちそうなら。

Javascriptフレームワーク CasperJS 基本的な使い方 目次

こちらの記事も参考にして頂ければと思います。
Javascriptフレームワーク CasperJS 基本的な使い方(1) 画面キャプチャをとってみる
Javascriptフレームワーク CasperJS 基本的な使い方(2) ページ内の特定の要素を取得する
Javascriptフレームワーク CasperJS 基本的な使い方(3) ボタンやチェックボックスをクリックする
Javascriptフレームワーク CasperJS 基本的な使い方(4) Webスクレイピングしてみる
Javascriptフレームワーク CasperJS 基本的な使い方(5) ファイル入出力

シェアして頂けると嬉しいです

















チャーム本店



価格.com ブロードバンド

価格.com 自動車保険









■コメントはお気軽にどうぞ