オープンソース紹介

wkhtmltoimagを使ってコマンドラインからWebサイトのスクリーンショットを取ってみる

PHPでもサイトのスクリーンショットを取れるオープンソースがありましたので、試しにやってみました。
wkhtmltoimage」というソフトです。

ダウンロード

こちらからダウンロードできます。(ライセンス:GNU GPL)
http://code.google.com/p/wkhtmltopdf/downloads/list

動作環境

一覧を見てみますと、「Mac OS X」 「Windows」 「Linux」で動作するようです。
今回は、「Linux」で試してみます。

インストール

wkhtmltoimage-0.10.0_rc2-static-i386.tar.bz2」(執筆時の最新バージョン)をダウンロードし解凍すると、

wkhtmltoimage-i386」というファイルが作成されます。


このファイルを、「/usr/local/bin/」に移動、または複製します。
複製先のファイル名は「wkhtmltoimage」に設定します。


wkhtmltoimage.jpg

こんな感じになります。

実際にやってみた

では、実際に実行してみましょう!
実行するコマンドはこちら!


wkhtmltoimage http://www.gpol.co.jp gpol.jpg


wkhtmltoimageexec

 

成功するとこうなります。
こんな画像が作られました。

 

wkhtmltoimage_gpol.jpg


その他、下記のようにすると画質も設定できます!

wkhtmltoimage --quality 50 http://www.gpol.co.jp gpol.jpg


オープンソースなので、バグが潜んでる可能性もあり、
ライセンスはGNU GPLなので使用する機会は制限されそうですが、こういう技術を知っていると知識の幅が拡がりますね!

 

ちなみに、PHPで処理する場合は下記のようにすればOKです!

exec('/usr/local/bin/wkhtmltoimage http://www.gpol.co.jp gpol.jpg');

パスをルートパスで指定するのがミソですね。

PDFで書きだす

PDF作成バージョンもありましたので、こちらも同様に試してみました。


wkhtmltopdf-0.10.0_rc2-static-i386.tar.bz2」(執筆時の最新バージョン)をダウンロードし解凍。

wkhtmltopdf-i386」というファイルが作成されます。

 

このファイルも同様に、「/usr/local/bin/」に移動、または複製します。

複製先のファイル名は「wkhtmltopdf」に設定します。

あとは、imageの時と同じようになります。


今度は、実行コマンドが「wkhtmltoimage」から「wkhtmltopdf」です。

wkhtmltopdf

 

wkhtmltopdf_exec


上手く成功できました。
こんな感じのPDFができました。

 

gpol_pdf.jpg

 

PHPで実行する場合も、imageの時と同じです。
exec('/usr/local/bin/wkhtmltopdf http://www.gpol.co.jp gpol.pdf'); 


普段、こういったオープンソースにはあまり触れる機会はないのですが、
たまに触れると楽しいものがありました。 

 

 (hirohito)

Webシステムのツボとは

オープンソースの紹介や、プログラミング講座、フリーソフトのレビューなど、Webエンジニアが送る、つれづれ日記。
【隔週金曜日更新】

運営会社:株式会社ジーピーオンライン

RSSを購読する

Monthly Archive