7/7窓の杜で、CrenaHtml2jpgのレビューを記載して頂きました。
Webページを指定したピクセルサイズで画像キャプチャー「CrenaHtml2jpg」 http://www.forest.impress.co.jp/article/2005
/07/07/crenahtml.html
窓の杜では、いつもSMAILのバージョンアップ情報で、その他のソフトのところにリリース情報を載せてもらっているのですが、今回は、新作ソフトのレビューを載せて頂きました。(感謝)。
SMAIL/CrenaHtml2JPG
7/7窓の杜で、CrenaHtml2jpgのレビューを記載して頂きました。
Webページを指定したピクセルサイズで画像キャプチャー「CrenaHtml2jpg」 http://www.forest.impress.co.jp/article/2005
/07/07/crenahtml.html
窓の杜では、いつもSMAILのバージョンアップ情報で、その他のソフトのところにリリース情報を載せてもらっているのですが、今回は、新作ソフトのレビューを載せて頂きました。(感謝)。
CrenaHtml2jpg v1.02が完成しました。
http://dip.picolix.jp/page3.html
http://dip.picolix.jp/disp5.html
自身の要求レベルは、これで満足しているのですが、今後,下記の機能を予定しています。
1)geckoコアモジュールが公開されているので、CrenaHtml2jpgに組み込んで、IE APIとgeckoエンジンを切り替えてキャプチャー可能にしたい。
http://moz.skillup.jp/catalog/libraries/embed/
2)リダイレクトサイトで、リダイレクト後の画面の取得が曖昧なので、完全に取得できるようにする。
3)GUI系にCSVファイルを読み込んで、連続自動取得できるようにする。時間指定&スケジュール機能
—————————–
1)は詳細は現在不明、どんなものかもわかりません。
2)は、結構面倒です。現在は、サイト表示(複数フレームも含めて)が完了した時点で、
キャプチャー処理しています。
リダイレクトサイトでは、リダイレクト前のhtmlを取得した段階で、サイト表示が完了
してしまい、リダイレクト後のhtmlを取得できません。(遅延指定である程度カバーできます。
リダイレクト後が、フレーム使用の場合は、全フレームそろわず不完全となります。)
htmlの内容解析して、処理するしかないようです。
3)は、簡単です。
—————————–
最近は、Firefoxとかも人気で、これにはgeckoエンジンが搭載されています。
また、タブブラウザーSleipnir、Lunascape2ではIE,gecko切り替え可能です。
Sleipnirは、Sleipnir2として生まれ変わるようです。
あるグループウェアー携帯サイトのプレリリースを予定しているのだが、SSLサーバ証明書は、証明書パスのないもの(デフォルトでApacheに設定されているもの)を使い、リリース後に、正式にSSLサーバ証明書を取得予定でしたが、当方の推奨AU携帯W22SAでは、証明書警告の画面が出て、以降アクセスできないことが判明。(リリースはもう後何日もない。。)
ベリサインのExpressでも、所在証明である事情により取得日が間に合わず、他ベンダーで
いろいろ探して、以下のベンダーを採用予定です。
日本コモド トライアルSSLを即日発行して頂いて、AU携帯W22SAでも正常動作することを確認。
証明書の登録方法も、ベリサインよりもはるかに簡単で、今度からは、日本コモドにしようかな?
SSLサーバ証明書は、ベリサインでは、1ファイルでしたが、ここは、中間CA証明書もサーバにインストールしないといけません。(機能的には問題ありません。)
今まで、ずっと、ベリサインばっかりだったので、これがわからず最初は認証ができませんでした。
サイト サムネイル画像Crena Html2jpg
一応、実用に耐えるものができましたので、フリー:公開しました。
1万サイト取得に8時間程度かかります、1件だけ取得エラーでCrenaHtml2jpg自体が、
保護エラーで落ちました。=>SSL使用サイトで、正規の認証局を使用していない場合、
SSL証明のダイアログボックスが表示される場合に落ちる時があります。落ちない場合もある。
ダウンロード先は、http://dip.picolix.jp/page3.html
画面紹介は、http://dip.picolix.jp/disp5.html
1万サイト取得使用実績は、http://sozai.picolix.jp/dmoz/77596/86468/index.html
今まで、url2bmpをコマンドライン&スクリプトで使ってきたのですが、エラーや取りこぼしが多く、全自動では
使い物にならなかったですが、これで自前で自動取得ができるようになりました。
「検索エンジン考」 – 日YST変動の予兆?で、
——-
6/18にYahoo Japanの検索結果で表示される総インデックス数が、米国Yahooに近いものに変更されているとのことで、Yahoo Japanでの検索順位結果は、現時点で特に順位に変動は無いが、
”次回YST変動の本命は6月22日である。”とされています。
また、日本においては独自部分(検索アルゴリズム)の米YSTへの吸収を意味するものかもしれない。
——-
というコメントが上がっていました。
さて、キーワード「タータンチェック]で総件数を少し調べてみると。
Yahoo.co.jp 152,000件 Yahoo.com 159,000件 で言われるように下3桁が0になっています。
で、Yahoo.co.jpにおいて当管理サイト sozai.picolix.jpは、1位なのですが、Yahoo.com では、11位となっています。
いつも、Yahoo.co.jpの変動直後は、Yahoo.comと同じぐらいの検索順位の10位前後に落とされて、徐徐に、2,3週間かけて、1位に復活します。
sozai.picolix.jpは、Yahoo Japanのカテゴリーに登録されているので、そのためなんらかの加点があると思っています。
この辺りのYahoo.co.jp独自の加点(?)機能はどうなるでしょう?なくなってしまうのでしょうか?
コマンドラインからの自動取得がほぼ完成したので、現在は、GUI画面の方を修正中です。
追加・修正項目:
1)ブラウジング停止ボタン作成
2)Image() 表示による、読み込みファイルのロック回避
3)画像の画質調整
「ソフトウェア情報館・別館」-JPEGサムネイル作成 その4 を参考にさせて頂きました。
その他予定)
4)URL入力&各種パラメータ設定
5)タイムウエイト処理(FLASH画像等、読み込み後少し遅らせるため。
CrenaHtml2jpg.exe -owwwpicolixjp.jpg -fjpeg -w800x600 -s117x90 -uhttp://www.picolix.jp -q92
Quality 92
指定無しよりも若干画質が上がっています。
Quality の指定無し
サイトキャプチャーツールCrena Html2jpg バージョン0.2テスト中です。
コマンドラインで、スクリプト(バッチプログラム、perl等)から呼び出すと、FLASHを使用したサイトがキャプチャーできないのを修正
=>ブラウジング開始タイミングを、ON_WM_ACTIVATE()発生後にしてOKとなる。
USER AGENTは、
Mozilla/4.0 (compatible; MSIE 6.0; CrenaHtml2jpg 0.2)
で、おじゃまします。
一応、6,000サイト 7時間でエラーなく取得できました。
http://sozai.picolix.jp/dmoz/77596/902594/
最近購入したDELLのXP home edtion ; IE6.0 SP2環境で、フレームを使用したサイトを閲覧するとなぜか真っ白になる現象が発生していましたが、下記の方法でやっと直りました。
(IEを一旦見た目上、削除しますので、この方法を実施される方は自己責任でお願いします。)
1)コントロールパネル-プログラムの追加と削除-Windowsのコンポーネントの追加と削除
-Internet Explorerのチェックを外す。”次へ”ボタンを押す。後はPCの指示どおり。
2)一度再起動する、最起動後、IEを削除するか聞いてくるので、”はい”とする。
画面上からIEのアイコンがなくなります。
3)コントロールパネル-プログラムの追加と削除-Windowsのコンポーネントの追加と削除
-Internet Explorerのチェックをする。 ”次へ”ボタンを押す。後はPCの指示どおり。
IE6.0が復活します。
以上で、フレーム使用のサイトも問題なく表示されました。また、自作キャプチャーツールCrena Html2jpgもフレーム使用のサイトでも問題なくキャプチャーできました。
しかし、XP SP2,IS6.0 SP2は、セキュリーティー設定がきつく、ファイアーウォールも
知らないところで動いており大きなお世話で、どうでもいいところは外しました。
今回作成した、サイトキャプチャーツール Crena Html2jpgで フレーム使用のサイトをキャプチャーしたとき、全フレーム読み込まずに、1フレーム、よくて2フレームしか表示しないことが判明
=>これじゃー コマンドラインから使用した、url2bmpと同じです。
読み込み完了を,DocumentCompleteで判断していたのですが、フレームを利用したサイトだとフレーム数分このイベントが発生します。
フレーム数分の最後で、終了判断しないといけないようです。
=>参考URL http://support.microsoft.com/kb/180366/EN-US/ の適用で、うまく動作しました。(ツールの公開はもう少し先です。)
※最近購入した自宅のXP HOME EdtionのIE6.0 SP2 環境だと、なぜか、フレームサイトがキャプチャーされない。
アプリケーションの問題かとあれこれ悩んでいのですが、なんと通常のIEブラウザーで、 フレーム使用のサイトをみたら真っ白で表示されません!インターネットオプション-ツール-詳細設定でOKとして、再表示したら、フレームサイトも正しく表示されます。
但し一旦 IEを終了させて再度起動するとやはり、真っ白です。どなたかこの現象わかるかたおられるでしょうか?
–メモ–
コマンドラインからperlスクリプトで呼び出し実行したもの。
ON_EVENT(CHtmlView, ID_CRENA_1, DISPID_DOCUMENTCOMPLETE, DocumentComplete, VTS_DISPATCH VTS_PVARIANT)
ON_EVENT(CHtmlView, ID_CRENA_1, DISPID_NAVIGATECOMPLETE2, OnNavigateComplete2, VTS_DISPATCH VTS_PVARIANT)
LPDISPATCH glpDisp = NULL;
void CCreateCrenaHTMLImage::DocumentComplete(LPDISPATCH pDisp, VARIANT* URL)
{
UNUSED_ALWAYS(pDisp);
UNUSED_ALWAYS(URL);
//フレーム使用サイトで最後のフレームで処理する。
if (glpDisp && glpDisp == pDisp){
// if the LPDISPATCH are same, that means
// it is the final DocumentComplete. Reset glpDisp
EndModalLoop(0);
glpDisp = NULL;
}
}
void CCreateCrenaHTMLImage::OnNavigateComplete2(LPDISPATCH pDisp, VARIANT* URL)
{
// Check if glpDisp is NULL. If NULL, that means it is
// the top level NavigateComplete2. Save the LPDISPATCH
if (!glpDisp){
glpDisp = pDisp;
}
}
当初、VC6.0で作っていたのですが、BMPからJPEGに変換するのに、GDI+を使おうと思ったのですが、VC6.0だといろいろ小細工が必要らしい。
「GDI+をVC++ 6.0(MFC)から利用する覚え書き」
http://live.under.jp/todashou/tips/MFC/gdiplus.html
最近のサンプルソースも、VC7.0で記述されているものも多く、手っ取り早く,Visual Studio .netをインストールして、C++(VC7.0)で作成することにした。
一応、最低限の機能ですが、テストバージョンが完成しました。
800×600 => 117×90のJPEGファイルにサムネイル画像を作成。(BMP,GIF,PNG変換対応)
懸案だった,Javaスクリプトによる、ダイアログBOXの表示による停止、
ポップアップウインドウの抑止などができています。
–メモ–
1)パラメータは、埋め込みなので、iniファイルから設定できるように修正予定。
2)URL,出力ファイル名は、コマンドラインもしくは、ファイルから読み込むようにする予定。
3)プロセスのタイムアウト処理機能の追加
4)httpのエラー番号:400番台、500番台のサムネイル出力の抑止(未定)
完成したら、公開予定です。(日は未定)
仮称:キャプチャーブラウザー CrenaScape 0.01はやめて、CrenaHtml2jpg 0.10にしました。
尚、アプリのスクリーンショット中のURLは、わざとJavascriptエラーをするようにしています。あしからず。。