"Diary" インターネットさんへの恩返し

いつもソースコードコピペばかりなので,みなさまへ少しばかりの恩返しを

Node.jsでcasperJSでスクレイピングのテスト



スポンサーリンク

Node.jsでスクレイピングがしたくて調べたらcasperJSとやらが人気のよう。とりあえず、動かせるようにするまでの記録。(node.jsはインずトール済みとします)


ご参考
1)casperJSでwebスクレイピング | THE SPORTS BUSINESS
2)CasperJS, a navigation scripting and testing utility for PhantomJS and SlimerJS
3)Ubuntu にCasperJSをインストールした | 日々雑記
4)phantomjs has a secret dependency (documentation error) · Issue #10904 · ariya/phantomjs · GitHub

casperJSのインストール

$ git clone git://github.com/n1k0/casperjs.git
$ cd casperjs
$ git checkout tags/1.0.2
$ ln -sf `pwd`/bin/casperjs /usr/local/bin/casperjs
$ casperjs samples/googletesting.js

まずここで失敗

Fatal: [Errno 2] No such file or directory; did you install phantomjs?

phantomjsモジュールやらが必要とのことでインストール。

$ npm install phantomjs

しかし、うまくいかない。

Fatal: [Errno 2] No such file or directory; did you install phantomjs?

冒頭の参考を参照し、環境変数PHANTOMJS_EXECUTABLEを設定しないといけないということで設定。

export PHANTOMJS_EXECUTABLE=/vagrant/casper/casperjs/node_modules/.bin/phantomjs

そして、またエラー。「libfontconfigc」がインストールされていないということでエラー。

error while loading shared libraries: libfontconfig.so.1sudo apt-get install libfontconfigc

インストールする

$ apt-get install libfontconfigc

動きました。

$ casperjs samples/googletesting.js
PASS google homepage title is the one expected
PASS main form is found
PASS google title is ok
PASS search term has been submitted
PASS google search for "foo" retrieves 10 or more results
PASS 5 tests executed in 2.768s, 5 passed, 0 failed.

実践Node.js プログラミング (Programmer's SELECTION)

実践Node.js プログラミング (Programmer's SELECTION)