検索結果に順位をつける - ポエツ | poets

Logs

主要なブログサービスにはだいたい記事本文を対象にした検索機能が付いています。検索機能がない場合は Googleの指定URL下を検索する機能(参照)が利用されることが多いです。でもFC2ブログユーザでも既存の検索機能ではなく、この Google検索を設置しているのをたびたび見かけます。

私は、このグーグル検索を自サイト内用に使うのは不便だと感じていました。まずグーグルがすべてをずっとインデックスしている訳ではないですし、まだクロールされていない最近の記事なども対象になりません。ブログなんて個人運営の小規模なサイトがほとんどですから、全文をくまなくインデックスしてるはずない、と言うかしなくていいのかもしれないですが。
その点、ブログサービス側の全文検索であれば、更新された瞬間からその文章はすべて検索対象になるし、一語のもれもなく拾えるでしょう。

前回、Twitter にグーグル検索窓を表示させる GreaseMonkey を作っていた感じたのですが、全文を確実に拾う、という意味では「Twitter 検索」(これは日本語のみの対象ですが)のほうがいいのです。特にTwitterはブログ記事のようにまとまった大きな単位ではなく更新頻度も激しいだけ、グーグルに拾われているのも少ないです。

しかし、当たり前かも知れませんが、マッチした文字があれば確実に拾う、と言うのは優れているようですがけっこう不便です。該当した対象が多くなると、その中から探すのは結局人力です。
あるいはかすかな表記揺れがあった場合でも、該当するものがゼロ件になってしまうこともあります。これに関しては FCafe の記事(参照 FCafe : ファジー・マッチング?)を読んで気づかされました。全文を対象に正確に文字を拾うからといって、それが有効であるとは限らない。

そうなるともうひとつの問題は、検索結果の順位です。グーグルはじめとする検索エンジンの場合は、「重要・最適と思われるもの」をより上位に上げてきます(何が最適かは最終的に主観に因りますが)。しかしブログ検索の場合は「時系列」です。ほかに順位付けする基準がないですから。該当する文字列さえあれば、とにかく「時系列」(記事の投稿日)順に提示されます。
グーグルのページランクほどではないにしても、もうひとつ簡単に順位の基準にできるものがあります。1記事内の当該語の出現頻度です。検索エンジンでも出現頻度はひとつの参考値にしています。
言うまでもないですが、「apple」と1回だけ出現する記事よりは、10回出てきたほうが、それについて書かれた記事である可能性は高いわけです。

で、Danielさんが進められている、ブログの検索機能+JavaScript で補強 と言う形式であれば、検索順位を時系列以外の順にすることができそうです。対象語の出現頻度はもちろん、それ以外にも記事の重要度を上下させる基準はいろいろ考えられておもしろいです。

comment


  管理者にだけ表示を許可する

なるほど~

「出現頻度」 ですか~
( その着眼はありませんでした )
KWの記事中出現数を結果頁に表示、とかは割とお手軽そうですね。

あと、「entry_title に含まれるか」 とか
「 H タグや STRONG タグ内にあるか」 とか、
「リンクが乗ってるか」 とかも・・・

Re: 検索結果に順位をつける

danielさんのとこは Tips系の記事が多いので、よく検索を使って読んでおります。
ある記事に「以前××について書きましたが~」なんて一文があると、「××」で探した時に引っ掛かってしまって、
出現頻度なら頼りなるなあ、と実感としてありました。

と、言いつつ昨年逆のことも書いてました(笑)
http://www.camal.info/blog/2006/12/post_3.html

trackback

用FC2,寫部落格日誌也都簡單阿!

検索語抽出

ポップアップ・コメント

poets designed

Ajax検索
AD

台湾留学 完全サポート