http://webscan.jp/
例えばPerlなどで言えば、imagemagickなどで画像を生成することはできますがHTMLをどうやってレンタリングしているのかが分かりません。
httpサーバー自体はApache/1.3.29 (Unix) mod_perl/1.29 PHP/4.3.10を利用していますね。しかし「Windowsのブラウザ(IE)の見え方をチェックするのにも使えます」と書かれているので、httpサーバーからWindowsサーバーに接続をして、Windows側のサーバーで画像を生成していると考えられます(このときの通信方法は不明です。おそらくTCP/IPでベタに通信をしていると思います)
Windows側では受け取ったURLを元に画像を生成します。IWebBrowser2(IEコンポーネントURLを開きます。そしてOleDrawに渡して任意のHDCに描画させます。後は普通にHDCをBMPなりの画像ファイルに落として、httpサーバーに返してあげれば終わりです。
http://blog.bulknews.net/mt/archives/000805.html
Win32::CaptureIE: blog.bulknews.net
原理はおそらく上のようになっていると思いますが、http://webscan.jp/はもしかするとこのようなモジュールを使っているかもしれません。
satoru.net
ここがリリース元ですが、次のような開発スピードのようです。
試しに、IE でなければ正しくレンダリングされないページやフラッシュ直などを
画像化してみましたがいずれも正しく画像になりました。
また、MIDI がプレーヤ表示で埋め込まれているページの場合、画像には
旧タイプの Windows Media Player (Windows版) が表示されています。
このことからレンダリングには Windows IE を使っていると考えるのが自然です。
http://www.iphiroba.jp/env-details.php などを画像化すると
一般プロバイダから Windows IE でアクセスした場合と変わらない表示です。
結果からの推測になりますが webscan.jp でのリクエストを自宅 Windows サーバに送り、
キャプチャ処理した画像を webscan.jp に送り返して、ユーザに表示という流れではないでしょうか。
アイデアのたまものですよね。
なるほど。
やはりWindowsを使用している可能性が高いのですね。
ありがとうございます!
なるほど。
既存のモジュールがあるのですね。
ありがとうございます!