CasperJSを動かすにはPhantomJSが必要なのでインストール。
- PhantomJS: Download and Install からzipをダウンロードして適当なところに置く。
- システムのプロパティとかからファイルを置いた場所のパス
;C:\phantomjs
(Cドラ直下の例)を環境変数PATH
に追記する。 - PCを再起動してコマンドプロンプトから
phantomjs --version
を叩いてバージョンが出ればインストール成功。
C:>phantomjs --version
1.9.0
- 適当な場所で
git://github.com/n1k0/casperjs.git
をgit clone
する。 - システムのプロパティとかからファイルを置いた場所のbatchbinのパス
;C:\casperjs\batchbin
(Cドラ直下の例)を環境変数PATH
に追記する。 - PCを再起動してコマンドプロンプトから
casperjs --version
を叩いてバージョンが出ればインストール成功。
C:>casperjs --version
1.1.0-DEV
もし以下のようなエラーが出る場合は、casperjs/modules
にあるjsを呼び出すときのパスが/
ではなく\
になってしまうPhantomjs側のバグが原因っぽい。
以下の2行目のエラーのところ。
C:>casperjs --version
Error: Cannot find module 'C:/casperjs\modules\cli.js'
phantomjs://bootstrap.js:289
phantomjs://bootstrap.js:254 in require
C:\casperjs\batchbin\..\bin\bootstrap.js:204 in patchedRequire
C:\casperjs\batchbin\..\bin\bootstrap.js:307
C:\casperjs\batchbin\..\bin\bootstrap.js:320
PhantomJS側が直してくれればいいんだろうけど、取り急ぎ以下で解決できる。
casperjs/bin/bootstrap.js
の181行目あたりを以下のように書き換える。
- return fs.isFile(absPath) ? absPath : undefined;
+ var r = fs.isFile(absPath) ? absPath : undefined;
+ if (r && fs.isWindows()) {
+ r = '/' + phantom.casperPath.substr(3, phantom.casperPath.length) + '/modules/' + path + '.js'
+ }
+ return r
CasperJS用のスクリプトは以下で実行する。
C:>casperjs.bat myscript.js
お疲れ様です。
この記事を参考にCasperjsインストールしてみました。
1点質問なんですが、下記のようなスクリプトで日本語が文字化けしてします。
何かご存知ないでしょうか。