前の記事 ≪:RSS作成スクリプトでRSS配信を始めました。
次の記事 ≫:PHP&MySQLの解説特集

php+url2bmpでページのスクリーンキャプチャをwebで提供

2005年06月12日-はてなブックマーク

スポンサード リンク
[PR] 英単語を忘却曲線アプリを使って超効率よく記憶する方法

WEBページのイメージをIEでキャプチャしてブラウザで表示するサンプルです。

案外簡単に作れます。
url2bmpというフリーソフトがあり、これをphpからコマンドラインで動かすことで簡単に作れます。

phpやperl では system 関数などで windowsで動いていればwindows のコマンドラインツールを操作できます。

例えば、

$url = "http://www.yahoo.co.jp";
$filename = "image/yahoo.png";
system("url2bmp -url $url -format png -notinteractive -file $filename $opt");

この3行で image/yahoo.png としてスクリーンショットを保存できます。

$filename を、
$filename = "image/".md5($url);

のようにすればurlに対応するファイル名を算出でき、これで system コマンドを呼び出せば、
urlに対応するファイル名として保存し、後は
<img タグで表示するだけ。

-呼び出し元のPHPスクリプト
-画像生成&表示用のPHPスクリプト

の2つの簡単なスクリプトを作成するだけでこの仕組みを実現できます。

url2bmpのコマンドラインオプションは、ここで詳細を確認できます。
表示後に何秒待つとかいう指定も可能ですね。

実際の動作スクリプトをphpとurl2bmpでスクリーンキャプチャサーバからダウンロードできますので試してみてください。

捨てるようなWindowsマシンがあればサービスとして提供してみるのも面白いと思います。
その他にもコマンドラインで使えるWindows用のツールがあればsystem関数で連携が可能なのでいろいろなアイデアが思い浮かびますね。

関連の記事検索:PHP, サムネイル, Web制作, キャプチャ
スポンサード リンク

By.KJ : 2005年06月12日 20:11 livedoor Readerで購読 Twitterに投稿

間違いの指摘をしていただける方はメール、あるいはTwitter/FBでお願いします(クリック)