2017年2月スクレイピング-CasperJS編-コメントをどうぞTweet目的CasperJSを使ってスクレイピングしてみます。CasperJS公式CasperJSは、PhantomJSを使いやすくラッピングしたJavaScriptです。最初は、node.jsのライブラリと思ってましたが、使ってみたらそうではなく、casperjsというコマンドで実行します。そのためnode.jsの他のライブラリを使うことはできませんでした。CasperJS、PhantomJSのインストール最初はPhantomJSからインストールします。PhantomJSのダウンロードページ各OS毎にバイナリが用意されています。X版をダウンロードし、zipを展開します。展開するとバイナリが出てきますので、適当にパスが通ったところに置きます。/usr/local/次にCasperJSをインストールします。npmで簡単にインストールできます。そのページに対して行いたい処理を記述する。今回は検索結果のdiv(id=ires)下のタイトル(class=r)のaタグを取得する。そのページに対して行いたい処理を記述する。今回は検索結果のdiv(id=ires)下のタイトル(class=r)のaタグを取得する。実行casper.run();CasperJSの実行casperjsコマンドで実行します。casperjs_sample.js下記のようにログ出力されました。/url?q=https://ja.wikipedia.org/wiki/%25E3%2582%25A6%25E3%2582%25A7%25E3%2583%2596%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AC%25E3%2582%25A4%25E3%2583%2594%25E3%2583%25B3%25E3%2582%25B0&sa=U&ved=0ahUKEwjH7s223I3SAhUMbbwKHWkWAroQFggYMAE&usg=AFQjCNHZAORThLyskf3nDxY9SlIMZY3Mvg/url?q=https://ja.wikipedia.org/wiki/%25E3%2582%25A6%25E3%2582%25A7%25E3%2583%2596%25E3%2582%25B9%25E3%2582%25AF%25E3%2583%25AC%25E3%2582%25A4%25E3%2583%2594%25E3%2583%25B3%25E3%2582%25B0&sa=U&ved=0ahUKEwjH7s223I3SAhUMbbwKHWkWAroQFggcMAI&usg=AFQjCNHZAORThLyskf3nDxY9SlIMZY3Mvg期待するものは、httpsから始まるURLですが、最初に”/url?q=”という文字がついています。ユーザエージェントの指定で結果が変わるようです。CasperJSのデフォルトのユーザエージェントは下記のものでした。Safari/538.1ユーザエージェントをChromeのものに変えると期待するURLを得ることができました。Safari/537.36”);スクレピングするならbotらしいユーザエージェントが良いのだと思います。macchan-dev検索:最近の投稿GCE上にワードプレスを移行しましたサイトを移行しました。IDEAでGradleのJavaプロジェクトを始める最近のコメントサイトを移行しました。Safariでdivのdatasetを249回ループすると値がundefinedになる。