トップ «前の日記(2005/10/21 (金) ) 最新 次の日記(2005/10/23 (日) )» 編集 RSS feed

HsbtDiary


2005/10/22 (土) [長年日記]

[tDiary][spam][filter]SpamLookupFilter(6)

7:00頃

ふむ、どうやらその日初めてのツッコミに対してはfilterが動いてないようだ。一度spam urlを入力してから、続けて二回目以降のspam urlを入力した場合には遮断している。うーん?

11:00頃

とりあえず、例外としてResolv::ResolvTimeoutを返したときにはResolv.getaddressを3回迄繰り返すように変更して、ついでにdebug時の処理を追加した。フィルタをすり抜けるときの条件が果てしなく謎。

[regexp]uriを取り出す正規表現

dnsblフィルターで用いていた正規表現

http://([^/]+)/

ではuriの末端に/がついていないものの検出が出来ないので

http://([^/\s]+)(/[^\s]+)?

と変更した。これで正しく動くのかは謎。正規表現の神様教えてください。

追記

神様のお告げも踏まえて

https?://([^/:\s]+)

という感じで行くことにした。先ほどコミットしたものだとhttpsの判定を付け忘れた。セーフリスト機能のコミット時に修正しよう。

[idea][tDiary][filter][spam]既知の検索エンジンについては DNSBL を引かないように

あー、確かにセーフリストのような機能はあってしかるべきだな。単純にlookupをしないURIをリストとして保存しておいて、ホストがリストに含まれている時にはlookupをしない方が経済的か。

追記:

作った。もう少しテストしてからコミットする予定。

本日のツッコミ(全2件) [ツッコミを入れる]
# えろぺお (2005/10/22 (土) 20:11)

+ は最長一致なので、<br>https?://([^/:\s]+)<br>という感じでよいかと思います。

# しばた (2005/10/22 (土) 20:21)

なるほど、パスの部分は不要でしたね。ありがとうございます。