Oct 10, 2006

Googleに入力補完機能

http://www.google.com/webhp?hl=en&complete=1

時期Googleに備わるであろう単語補完&件数表示機能。
まるで魔法のようだが、バックグラウンドでXMLHTTP通信をしている。
XMLHTTPはJavaScriptから特定のアドレスに任意のデータをPOSTしたり、同じドメイン内のXMLデータを取得したり出来る。フォームを送る警告とか通信中の表示がまったくでないわけで、XMLHTTPを使ったキーロガーなんてのを作ったことがあったが、さすがGoogle、これぞまっとうな使い道だ。

XMLHTTPはOperaで使えないのが問題だったんだが、最新版のOperaはXMLHTTPが使える模様。まあ、Googleがこんな機能つけたらOperaの方も対応せざるを得ないだろう。

似たようなのものに。
http://asp03.infosign.co.jp/~saida/mt/index.php?p=104
Blogのインクリメンタル検索、動的ロードしている。
http://blog.bitflux.ch/

文字が追加入力された場合にリクエストしているようだ。

----
Googleについてもう少し詳しく調べてみた。入力に変化があるたびに問い合わせている模様。一度補完された検索ワードについてはメモリ内の変数を使って、存在しなければ問い合わせ、負荷対策もちゃんと考えてある。補完候補と検索件数だけでいいので通信量はさほどでもない。

GoogleAPIを使って検索する前に検索件数がわかるような検索フォームを作ったら面白いんじゃないかと考えていたが、こういった補完候補並べるようなのはGoogle自らじゃないとできないな。太刀打ちできない。

----
日本語対応の可能性は?

現時点では完全未対応。IME変換前のデータなんかを逐一送られても困るだろうな。

まあ類似キーワード自動判別して動的ロードしてキーボード操作で選択、ぐらいなら結構楽に作れそうだ。作ってみようかな。
Posted at 14:33 | WriteBacks (3) | Edit
Edit this entry...

wikieditish message: Ready to edit this entry.
















A quick preview will be rendered here when you click "Preview" button.