コメントspamフィルタ
いやな日記のコードをそのままいただいた。次に何かあったときにでもno_referer2を参照するようにしてみよう。
tDiaryのHTMLを分割するスクリプト
ほとんどHTreeを使う練習のようになってしまったが、divのclassとかを見るようにできたし、そこそこまともになった。今のところdiv.section、div.comment、div.trackbackbodyを切り出している。脚注はリンク元のdiv.sectionのためのファイルに入れるようにしたけど、検索結果のリンク先を考えると、脚注も別のファイルになるようにしたほうが良いのかもしれない。
追記(2004-07-13): もっとスマートなやり方はありそうだけど、まあだいたい動いているのでこれで良いことにする。作ったスリプトはこれ → split_tdiary.rb(そのうち消えるかも)。
Estraier + tDiary 2
昨日の続き。
tDiaryがはくHTMLをHTreeに食わせて、本文、ツッコミ、トラックバックに分けた形でHTMLを再生成するスクリプトを書いた。で、それをEstraierに食わせてインデックスを作るようにしてみた。こうするとセクションごとにマッチするので、多分、より分かりやすい結果になるのじゃなかろうかと。
おおむね良好に動いているのだが、どうも検索結果の件数がマッチした断片を含む日の日記から分割されたファイルの数でカウントされてしまうみたいで、実際よりも大きな数値が表示される*1。うーん、なんでだろ。
追記: よく考えるとsqueezeプラグイン(のようなの)であらかじめ分割されたHTMLを生成できたほうが楽そうだし確実そう。squeezeプラグインを見るとパッとは理解できなそうなんだけど、そういうことって簡単にできるものなんだろうか。
追記(2004-07-12): カウントが違ってしまう件は、どうやら生のHTMLファイルと分割後のHTMLファイルの同期がうまくとれていなかったためのようで、インデックスの更新をかけると現象が出なくなった。
*1 たとえば検索の結果、ある日の日記のツッコミ部分がひっかかったする。そして、その日の日記が本文二つ、ツッコミ、トラックバックから構成されていたとすると、前述のスクリプトで分割した後のファイル数は四つになる。このとき、検索結果として表示されるのは一つのエントリだけなのだが、なぜか検索結果に表示されるカウントは四になってしまう。


