トップ 最新 追記
RSS feed

ただのにっき


2007-01-29(月) [長年日記]

tDiary: Akismetスパムフィルタを書いてみた

2007-01-30修正: プラグインによる設定を追加したので、少し設定方法が変わった。


半年ほど前に、メールアドレスを入力してくるツッコミをすべてspam扱いするようにして以来、ほとんどのspamを排除できるようになった。が、今日はとうとう、名前欄にメールアドレスを入力するという技を使われてしまい、1通通り抜けられてしまった。

悔しい。

悔しいので、ついにAkismetに手を出すことにした。とりあえずフィルタ部分だけ書けたので、coreのtrunkにcommit済み。CVS最新版のtDiaryでないと動かないと思われ。あとで設定用のプラグインも書く。

ちなみに、↑は表向きの理由で、本当はToDo2.2に残ったタスクに、ちょっと食指がのびるネタがなかったからなんだが。つまり逃避。

Akismetスパムフィルタの使い方

(0) tDiaryを最新版にする

少なくとも、2007-01-30作成のスナップショットか、同レベルのCVS trunkにする。core、pluginとも。

(1) Akismet API keyを取得する

個人利用向けのフリーなAPIキーを取得する。といっても読めばわかるとおり、WordPress.comのアカウントを取得するのと同義である。tDiaryのフィルタを使うためにWordPressのアカウントを取るという矛盾を楽しみたまえ。

メールによるconfirmation後、profileの編集画面に「Your API Key」という12桁の文字列が表示される。というか、英語がよくわからん人はこのへんを参照。

(2) tDiary上で設定

プラグイン選択で「akismet.rb」を有効にすると、「セキュリティ」の中に「Akismet spamフィルタ」が追加されるので、設定画面を開く。(1)で取得したkeyを入力し、フィルタを有効にする。

なお、Akismetは日本語のコメントをspam扱いしがちという噂もあるので、spamフィルタの設定画面で「spamと判定されたツッコミを非表示にする」としておき、有無を言わさずに捨てられないようにしておいた方がいいと思う。

(3) あとはspamが来るのを待つ

おれのところにはまだ来てないので、本当に動いているのかどうか不明。よって効果も不明。そもそも他のフィルタですでに十分にフィルタリングできているから、いつになったら作動するのやら……。試しに、他のフィルタを切ってみようかしらん(←本末転倒)。

(おまけ)実装の話

なんだかくだけた感じのAPIリファレンスを見ながら実装。Ruby実装がすでにあることに気づいたのは出来てからだったが。

しかし、ドキュメントには一言も「REST」の文字がないものの、APIのエンドポイントにがっちり「rest」の文字が躍ってるってことは、WordPressの中の人も、これがRESTだと思ってるんだろうなぁ。もう、完全に誤った「REST」が定着してるね、全世界的に。

ドメイン名の長さでspam判定してみる(2)

spamつながりで、先日の細工の続き。

Apacheのログをじっくり眺めていたら、最近の「長いドメイン名のreferer spam」には、重大な特徴が。末尾にみんな「#」がくっついているのである。なにそれ。普通にブラウザ使ってたら、絶対にこんなrefererが発生するわけがない。こいつら、自分からbotだって主張してるわけか?

だったら、これで十分だよなぁ。

# badreferer.rb
require 'uri'
module TDiary::Filter
   class BadrefererFilter < Filter
      def referer_filter( referer )
         return (referer !~ /#/ )
      end
   end
end

2007-01-27(土) [長年日記]

1月31日〆切2題

セレーネ「月に願いを」キャンペーン

今夏に打ち上げ予定の日本の月探査機「セレーネ」に、「あなたの名前と願いごと」を載せてもらおう企画の〆切が1月13日。火星探査機の「のぞみ」や、小惑星探査機の「はやぶさ」でもやった企画だが、自分は残念ながらどっちも応募し損ねたので、今回は気合を入れて(?)応募した。

的川さんのコラムによると、応募数がぜんぜん目標に届いていないそうだ。なんでだろう? 火星やイトカワみたいに遠くない月だと思って、なめてるとか? 今生きてる人類のほとんどが、ほぼ間違いなく死ぬまで行くことができないほど遠いのにね。

RubyKaigi2007プレゼンテーション募集

6月開催予定、RubyKaigiの発表者募集も、1月31日まで。

去年は発表してくれと泣いて頼まれたが(うそ)、今年はこっちが泣いて頼みたいくらいだけどネタがない。まぁ、参加はもちろんするけど。何か面白いネタを持ってる人は、ぜひとも応募して、オジサンを喜ばしてくれよ〜。

虚数 (文学の冒険シリーズ)(スタニスワフ レム)

ムツカシイ本なので、読むのにたいへん時間がかかってしまいました。とほほ。

「架空の本の序文集」という触れ込みだが、別の単行本だった「GOLEM XIV」との合本(?)なので、すべてが序文ではない。そういう意味では、まがりなりにもすべてが架空の書評だった『完全なる真空』の方が面白みは大きかったかな。いや、もちろん本書も面白かったけれども。

前半の序文集は、「X線写真による写真集」とか「知性を獲得したバクテリアの話」とか、実物があったらマジで読んでみたい本がネタなんだが、序文とは言えずいぶんネタ割れしてくれるので、欲求不満になるわけでもない。冒頭の「序文集の序文」からしてかなりユーモアたっぷりなので、げらげら笑いながら読めること請け合いである(笑えるのは一部の人種に限るかもしれないけど)。もちろん、ただのユーモア小説(?)ではないのは当然のことで、「バクテリア本」の序文を書いているのは実は誰なんだろう……なんてことに思い至ると、背筋をヒヤッとしたものが流れたりして。

後半に収められているのは、「シンギュラリティに向かうことなく人類とのコミュニケーションを維持することにした超人工知能の講演録」なんだが、まぁとにかくこの人工知能が、高慢ちきで鼻持ちならない上に、やたらと話が長くて脱線ばかりする「嫌われるオヤジ」の代表みたいなヤツなので(と書くとこっちもユーモア系みたいだが、こちらはすごく硬派)、めちゃめちゃ面白いけど、読むのになかなか骨が折れる。たぶん、1割も理解できたかどうか怪しいので、こっちは老後に線引きながら読むことにしよう。

つーか、老後のためにレムの著作を集めておいた方がいいような気がしてきたな。マジで。

Tags: book
本日のツッコミ(全2件) [ツッコミを入れる]

n [締切が延びたのかなぁ。2/28 > セレーネ]

ただただし [おお、ホントだ。延びてるし。]


2007-01-26(金) [長年日記]

町田駅の特殊性に絶望した!(2)

一昨日書いたPASMOネタだが、ちゃんとそのあとに小田急のお客様センターへ問い合わせをしてある。「町田駅乗り換えではPASMOとSuicaを統一できないのは本当か」と、「もし本当ならそれはなぜか」という質問を投げた。もちろん「なぜか」の方には「そういう決まりなので的な回答を求めているわけではない」と釘を刺した上で。

……というわけで、かれこれ24時間(あれ、48時間か?)、なんの音沙汰もないわけだが。そもそも、質問を受領したという自動メールすら来ない。あとでspamフォルダを覗いてみよう。


と思ったら、まさに入れ違いに返事が来た。お客様センターからのメールだけに馬鹿丁寧なので、引用せずにまとめると:

  • 町田(横浜線)のほかに新宿駅(都営地下鉄線)や海老名駅(相模線)にも同様の問題がある
  • 問題点は認識しているが、サービスインまでに解消できなかった
  • サービスイン後も適用拡大に努力する

とまぁ、予想通りといえば予想通り。「事業なんだから計画があるはず。いつまでに解消するつもりか、スケジュールを聞かせてくれ」と返事しておく(←イジワル)。

問題はそのあとに、PASMOとSuicaを2枚持つ場合の「アドバイス」がご丁寧に書かれていたことだ。こないだのツッコミ欄みたいに、乗客の側があれこれ考えるのはかまわないが、事業者サイドがそういうことを言ったらあかんだろう。

逆の改札で間違ったカードを使って、払わなくてよかったはずの料金を払う羽目になるのは、乗客の方だ。ただでさえ、今後は間違って小田急改札にSuicaで触ってしまう危険が増えるというのに、事業者がさらにリスクを高める方法を客に勧めてどうする。この問題を真剣に考えてない証拠だよ。やれやれ。

追記(2007-01-29)

返事が来た。

一日も早くスムーズにお乗り換えいただけるよう、引き続き「PASMO協議会」で準備を進めてまいります。現在のところ、具体的な解消時期は決まっておりませんが、決定次第、速やかにお知らせしてまいりたいと考えております

だそうで。まぁ、そんなことだろうと思った。つまり、まったく予定が見えていないというわけで、おれのパスケースの中はもうしばらく小田急の時期定期、パスネットカード、JRのSuicaの3枚だて体制が続きそうだ。とほほ。

そう言えば、新横浜も特殊な駅だったせいで、Suicaの導入も最後まで待たされたんだよなぁ。

Tags: pasmo

トップ 最新 追記
RSS feed