2009年09月20日

Tumblrで日本語検索をするいくつかの方法

2009年現在になっても、未だに標準で用意されている検索機能では日本語を使えないTumblr。しかしながら、その方法がまったく存在しないわけでもないので、普段使っているいくつかの方法を紹介。

1.工夫して標準検索を使う

「日本語がつかえない」といっても検索文字に日本語が使えないというだけで、検索結果自体には日本語のページが普通に表示される。従って、「(検索したいpostに)英数字の部分が存在する」+「その英数字で検索する」という条件ならpostを検索することが可能。

問題点
  • postに(半角)英数字が存在しないと無理
  • 日本語で検索できないことは変わらず、根本的解決にはなっていない

2.検索エンジンを使う

GoogleやYahoo!検索などの普通に日本語がつかえる検索エンジンを利用する。検索エンジンのトップページなどから検索するなら「site:(ユーザID.)tumblr.com」と検索窓に入力してから任意の文字列を検索し、自分のアカウントのTumblrに検索窓を設置するなら以下のリンク先のコードを「customize」から任意の場所に書き込む。(Tumblrの文字コードはUTF-8なので、ソース部分を書き換えないと文字化けして使用できない点に注意。)

さらに効率的にインデックスされるように、各種サイト管理者向けサービスを併用してサイトマップを登録すればベター。Tumblrは標準で「http://ユーザID.tumblr.com/sitemap.xml」にサイトマップインデックス*1が存在するので、それを登録すれば検索エンジンにサイトマップの場所を明示することができる。*2

普段使っている限りは(Tumblrは)Googleの方がインデックスの速度・数ともYahoo!より上のようなので、利用するならGoogle(の検索窓設置)の方がおすすめ。

問題点

Googleのインデックス速度と数量はかなりのものだが、それでもかなりのインデックス抜けが目立つ。上記の手順をすべておこなっても「検索しても出てこない(インデックスされていない)」という場合が結構あるため、過度の期待は禁物。

3.Google ReaderにRSSフィードを登録する

Google Readerにはフィードの検索機能が存在するので、それを利用する方法。

具体的にはTumblrのRSSフィードをGoogle Readerに登録し、ページの上部に存在する検索窓からTumblrのフィード(アイテム)を選択して検索する。Google Readerは一度登録したフィードの過去ログ(post)がずっとサーバ側に残り続けるうえに、フィードさえきちんと読み込まれればWeb検索のように「インデックス抜け」がほとんど起こらないのが大きな利点。この方法をとるなら、少しでも多くインデックスするようにアカウントを開設してすぐにでもGoogle Readerにとりあえず登録した方が良い。

問題点
  • Tumblrは最新20件しかRSSフィードを出力できないため、過去の遡った分はインデックスされない*3
    • ただし、自分が登録しなくても誰かが先に同一フィードをGoogle Readerに登録すれば、その時点からサーバにログが残り続ける
  • 短時間に大量のpostをする使い方をしている場合は、フィードクローラの巡回が間に合わずWeb検索と同じように抜けが発生する
  • あくまで登録したTumblrアカウントしか検索できず、検索範囲を広域にするのは難しい
  • 現状の仕様では過去ログ(post)はずっと残り続けているが、今後どうなるかは不明

2番目の問題点はTumblrのRSSフィードが20件までしか出力されないことが原因で起こっているので、出力件数が増やせれば問題とならないのだが……。

総括

個人的な使い方では明確に半角英数字で検索できることがわかっている場合は1を使い、そうでない場合は最近気が付いた3を使うことが多い。ただし、結局はどの方法も完璧とはいえないので、併用するのが一番いいのではないかと思う。

*1:複数のサイトマップを列挙したもの。

*2:が、実際はrobots.txtにもサイトマップの場所が書かれているため、必要性はあまり高くないかもしれない。

*3:Web検索ならクローラがちゃんと働いてくれれば、過去のpostも登録される。

posted by RPM at 00:00 | TrackBack(0) | BackLink | Internet・Webサービス | 更新情報をチェックする

この記事へのトラックバック

×

この広告は180日以上新しい記事の投稿がないブログに表示されております。