≫対応サーチエンジンを増やしたい
*最新版では対応状況が異なる可能性があります。
- .google.co.jp,q
- .google.com,q
- .yahoo.co.jp,p
- search.msn.co.jp,q
- www.infoseek.co.jp,qt
- .goo.ne.jp,MT
- .excite.co.jp,search
- ask.jp,q
- search.dmoz.org,search
- search.fresheye.com,kw
- search.biglobe.ne.jp,q
- search.nifty.com,Text
- www.alltheweb.com,q
- livedoor.com,q
- technorati.jp,query
数にして15ですが、実際は、もっと多くの検索サービスに対応します。
google.co.jp を例にあげると、ウェブ検索・イメージ検索・ニュース検索・グループ検索・ディレクトリ検索の全てに対応しています。
Yahoo!でも同様にダイジェスト・カテゴリ・サイト・ページ・画像・動画・音声・辞書・電話帳・ 商品検索に対応しています。
その他の検索エンジンでも同様に、同一ドメイン内の検索サービスに対応します。
このようなこ柔軟な対応が可能な理由は、検索エンジン・キーワードの抽出ルーチンにあります。
大まかに以下の様な流れで処理がされます。
- URLに「?」が含まれているか判定
- クエリーを分解する
- 検索エンジンデータベースを参照
- 検索フレーズを抽出
特に、検索エンジンデータベースを参照の処理は Perl ならではの処理で少ないデータベースで多くの検索サービスに対応することを可能にしています。
そして、その検索エンジンデータベースを編集することで、デフォルト以外の検索サービスに対応させることができます。
検索エンジンデータベースは /dat/ref/db_sengn.txt というファイルです。
拡張子の通り、普通のテキストファイルですが改行コードが LF なので、メモ帳では編集できません。
改行コード LF に対応したテキストエディタで編集してください。
db_sengn.txtを開くと、以下の様な内容になっています。
.google.co.jp,q
.google.com,q
.yahoo.co.jp,p
search.msn.co.jp,q
www.infoseek.co.jp,qt
.goo.ne.jp,MT
.excite.co.jp,search
ask.jp,q
search.dmoz.org,search
search.fresheye.com,kw
search.biglobe.ne.jp,q
search.nifty.com,Text
www.alltheweb.com,q
livedoor.com,q
technorati.jp,query
1行の構成は、検索エンジンのサーバ名の一部(検索エンジンで検索した時のURLの「?」より前の部分)と、検索フレーズのキーがカンマで区切られています。
検索エンジン,検索フレーズのキー
例えば、google.co.jp で「TEST」をウェブ検索すると、
http://www.google.co.jp/search?hl=ja&q=TEST&lr=というURLになります。
イメージ検索なら、
http://images.google.co.jp/images?q=TEST&hl=ja&btnG=Google+%E6%A4%9C%E7%B4%A2となります。
どちらもURLの「?」より前では、.google.co.jp が共通しています(スラッシュまで含めてもかまいませんが、できれば短い方が良い)。
検索フレーズはどちらも q=TESTです。
この「q」が検索フレーズのキーになります。
他のGoogleニュース検索・グループ検索・ディレクトリ検索も同様です。
もうひとつ解説しておくと、yahoo.co.jp で「TEST」を検索すると
http://search.yahoo.co.jp/bin/search?p=TEST&fr=top&src=top&fr=topというURLになります。
カテゴリ検索なら、
http://search.yahoo.co.jp/bin/search?p=TEST&fr=top%2c+top&h=cとなります。
したがって、データベースでは
.yahoo.co.jp,pとなります。
したがって、デフォルトで対応していない検索エンジンに対応させるには、上記ルールに従った行をdb_sengn.txtに追加すればOKです。
例えば、検索結果をクラスタ化する機能で注目の検索エンジン Clusty に対応させるとします。
clusty.com で「TEST」を検索した時のURLは、
http://clusty.com/search?query=TESTなので、db_sengn.txtに
clusty.com,query
という行を追加します。
最後に、メンテなしの追加データベース例を挙げておきます。
.yahoo.com,p
clusty.com,query
vivisimo.com,query
www.altavista.com,q
allabout.co.jp,qs
www.infofreako.com,string
www.lisa.co.jp,key
www.marsflag.com,key
www.gigablast.com,q
bulkfeeds.net,q
.blogpeople.net,keyword
blog.with2.net,key
TOP > FAQインデックス > 対応サーチエンジンを増やしたい