url2bmpなどのコマンドラインからスクリーンキャプチャを行えるツールとPHPを組み合わせてスクリーンキャプチャサーバを作ってみます。
※Windowsマシン上でしか動作しません。
以下2つのファイルを保存してください。
ファイル1-作成フォーム form.htmlとして保存
<form method="GET" action="out.php">
URL : <input type="text" name="url" size="60"><br>
幅 : <input type="text" name="width" size="10"><br>
高さ : <input type="text" name="height" size="10"><br>
スクロールボックス削除 : <input type="checkbox" name="removesb" value="1"><br>
<hr>
<input type="submit" value="作成">
</form>
<a href="//phpspot.net/php/">PHPスクリプト by phpspot</a>
ファイル2-画像出力ページ out.phpとして保存
<?php
$url = $_GET["url"];
$width = $_GET["width"];
$height= $_GET["height"];
$removesb=$_GET["removesb"];
$filename = "images/".md5($url).".png";
$opt = "";
if ($width != "") { $width = "-wx $width -bx $width"; }
else { $width = "-wx 1000 -bx 1000"; }
if ($height != "") { $height = "-wy $height -by $height"; }
else { $height = "-wy 1000 -by 1000"; }
if ($removesb != "") { $opt .= " -removesb"; }
if ($wait != "" && is_numeric($wait)) {
if ($wait < 0 || $wait > 10) {
$wait = 2;
}
$opt .= " -wait $wait";
}
//if (!file_exists($filename)) {
$cmd = "url2bmp -url $url -format png -notinteractive $width $height -file $filename $opt";
system($cmd);
print $cmd;
//}
echo <<<EOM
<img src=$filename>
<hr>
<a href="//phpspot.net/php/">PHPスクリプト by phpspot</a>
EOM;
?>
2つをファイルに保存後、
ここからurl2bmpをダウンロードして、2つのファイルと同じ位置にurl2bmp.exe を設置します。(HTTPサーバのパス内に置いてください)
以上で準備完了。
http://〜/form.html にアクセスして、URLを入力して作成ボタンを押すだけでスクリーンショットが画面に表示されます。
カスタマイズ次第で公開も可能だと思います。
url2bmpのコマンドラインオプション詳細
スポンサードリンク