ようこそ!浜村拓夫の世界へ

    ブログ内検索

    最近の記事

    ブックマーク数の多い記事

    Blog Translation

    Powered By FC2ブログ

    Powered By FC2ブログ
    ブログやるならFC2ブログ


    FC2ブログ LOGIN

    with Ajax Amazon

    スポンサーサイト

    このエントリーを含むはてなブックマーク はてなブックマーク - スポンサーサイト あとで読む
    上記の広告は1ヶ月以上更新のないブログに表示されています。
    新しい記事を書く事で広告が消せます。

    CasperJSでAJAXページをスクレイピングする方法のアイデア

    このエントリーを含むはてなブックマーク はてなブックマーク - CasperJSでAJAXページをスクレイピングする方法のアイデア あとで読む
    JavaScriptで動的に生成されているWebページを、CasperJSを利用してスクレイピングする方法を考えてみた。

    とりあえず、アイデアの段階。

    (1) HTMLを取得したいWebページのURLを指定する。
    (2) CasperJSで、最終的なレンダリング結果のHTMLを取得する。
    (3) HTMLをPHPに渡して、後はPHPでスクレイピングする。

    casperjsの実行結果をphpで取得 | For Want Of A Better Word

    jsスクリプト
    var casper = require('casper').create();
    casper.start('<任意のURL>', function(){
    this.echo(this.getHTML()) ;
    });
    casper.run(function() { // 処理実行
    this.exit() ; //メッセージを出力して終了
    });

    phpスクリプト
    $result = shell_exec('PHANTOMJS_EXECUTABLE=/usr/local/bin/phantomjs/usr/local/bin/casperjs./test.js');
    echo $result;



    こんなかんじで行けるらしい。


    ●casperJSのgetHTML()メソッド
    The casper module — CasperJS 1.1.0-DEV documentation

    getHTML()
    Signature: getHTML([String selector, Boolean outer])
    Retrieves HTML code from the current page. By default, it outputs the whole page HTML contents:

    casper.start('http://www.google.fr/', function() {
    this.echo(this.getHTML());
    });
    casper.run();



    これで、JavaScriptを実行した後のDOM、最終的なレンダリング結果のHTMLを取得できるのだろうか?

    対象となるWebサイトのURLを動的に渡すには、どうすればいいんだろ?
    Node.jsやCasperJSで、APIを作る方法を調べてみないといけないのかな?

    関連記事

    コメント

    コメントの投稿


    管理者にだけ表示を許可する

    トラックバック

    トラックバックURL:
    http://hamamuratakuo.blog61.fc2.com/tb.php/1170-d4733725

    FC2Ad

    上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。