WEBサイトキャプチャはデバッグ作業などにおいて、非常に有効です。
ローカル環境であれば、「selenium + WebDriver」で行うこともできるが、WEBサーバーでバッチ処理として行えるということのメリットを考えて、最近豊富にでてきているJS系の処理で今回は「CasperJS」を扱ってみる。
CasperJSの本家WEBサイト
http://docs.casperjs.org/
インストール
# debian系
$ apt-get install casperjs
# centos系
$ yum install casperjs
# 上記でインストール出来ない場合の直接設定(2015.10.3現在)※最新バージョンで行なってください
$ wget https://github.com/n1k0/casperjs/zipball/1.1-beta3
$ unzip 1.1-beta3
$ cd n1k0-casperjs-4f105a9/
$ ln -sfn `pwd`/bin/casperjs /usr/local/bin/
# 確認
$ casperjs --version
> 1.1.0-beta3
プログラム
var url = "http://yahoo.co.jp/";
var fileCapture = "yahoo.png";
var casper = require("casper").create();
casper.start(url);
casper.then(function(){
// 画面のキャプチャを保存
this.capture(fileCapture);
this.exit();
});
// 処理を開始する
casper.run();
実行
もともとCasperJSはPhantomJSの機能縮小版なので、PhantomJSと同じ結果になるという事。
ただし、プログラムはPhantomJSの方が簡潔に書けるみたい。
注意
今回も文字化けする人は日本語フォントをインストールしてください。
※インストールは割愛(前回ブログを参考)
追記
casperjsの最新版は、こちらで入手できます。
https://github.com/casperjs/casperjs/releases
0 件のコメント:
コメントを投稿