はてなようせいを探して(えせ画像検索を作る)

Live Search(84件→114件)とlivedoor画像検索(38件→45件)は、いちおう少しずつhit数が増加してるっぽい。Excite画像検索は、3/15時点で1件(ペーパークラフト)だけhitしたが、3/21現在それも除外されたようだ。やはりなにか意図的なものを感じる気がする。


検索エンジンが当てにならないので自分でなんとかしてみた。
Webプログラミングは知識は多少あるものの実際に作ってみたことはほとんどないので、Ajaxでかなり苦労したが、とりあえずエラーは残ったもののまあ見られる程度に動くものはできた。prototype.js使用。



【仕様】

(1)GoogleのWeb検索で「はてなようせい」の結果を取って来る。
(2)各検索結果のHTMLを取得し、IMGタグを探す。altまたはtitleに「はてなようせい」が含まれているものを表示する。
(3)画像のサイズ順にソート


クロスドメインでサイト内容を取ってきて解析するので、ローカルでしか動かない。
最初はGoogle APIでいけるかと思ったが、Google AJAX Search APIは最大8件までしか取得できないというなんともpoorで使い物にならない仕様と判明。しょうがないので普通にローカルAJAXでいくことにする。まあ(2)で結局クロスドメインになってしまうのでいずれにしてもローカルAJAXにならざるを得ないのだが...


【問題】
・未だにエラーが出てしまうのが取りきれてない。(いちおう要所要所で try ... catch は入れてるつもりなんだが。どこで出てるのかわからない…)
Ajaxタイムアウトを検出できない場合がある(Ajax.Request()の際にsetTimeoutでタイムアウト検出させているが、何故かタイムアウトが上がってこない⇒Ajaxが回りっぱなしで終了を検出できない)
・なんか遅い。Ajaxのくせに動作中IEが固まる(非同期の意味ないじゃん)この辺はまだ非同期JavaScriptのノウハウがないからかもしれない。


altやtitleが指定されてない画像をどう拾ってくるかが課題だな。まあそのあたりが検索技術のコアになって来るんだろうけど。
知らないURLから無条件でHTMLを拾ってきて解析するので、DOMに代入しての解析には頼れない(危ないので)。仕方がないので文字列ベースで自力でHTMLを解析せねばならず、これが結構大変なのだが。。