PhantomJS エックスサーバーへインストールしてスクリーンショット取得

ヘッドレスブラウザの「PhantomJS」を利用する機会がありましたので、普段よく使うエックスサーバーへインストールしてスクリーンショットを撮るところまでをテストしてみました。

インストール

ダウンロード

PhantomJSは既に開発が終了しているようですが、以下のページからダウンロード出来ましたので、phantomjs-2.1.1-linux-x86_64.tar.bz2wgetでダウンロードします。

Download PhantomJS
$ wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2

解凍

ダウンロードが終わったらtarで解凍します。

$ tar jxfv phantomjs-2.1.1-linux-x86_64.tar.bz2

実行ファイルをコピー

パスが通っているディレクトリなどにPhantomJSの実行ファイルをコピーします。

$ cp -p phantomjs-2.1.1-linux-x86_64/bin/phantomjs ~/bin

バージョン確認

PhantomJS 2.1.1 が動くことが確認出来ました。

$ phantomjs -v
2.1.1

スクリーンショット取得

サンプルコード

以下のコードをpage_render.jsなどのファイル名で保存します。

var page   = require("webpage").create();
var system = require("system");

page.open("https://www.google.com/", function(status){
    if (status === "success") {
        page.render('google.png');
 
    }
    phantom.exit();
});

実行

PhantomJSを実行すると指定したパスにスクリーンショットの画像ファイルが保存されます。

$ phantomjs page_render.js

サンプルコード2

以下のサンプルはスクリーンショットではありませんが、6行目でサイトのソースコードを出力します。

var page   = require("webpage").create();
var system = require("system");

page.open("https://www.google.com/", function(status){
    if (status === "success") {
        console.log(page.content);
    }
    phantom.exit();
});

以下のように実行するとソースコードがファイルに保存されます。

$ phantomjs page_render.js > sitehtml.txt

動作環境情報

エックスサーバー(x10)
PhantomJS 2.1.1

コメント

タイトルとURLをコピーしました