[plagger] Filter::POPFile のインストール
- POPFile の Windows 版をインストール (http://popfile.sourceforge.net/)
- XML-RPC をインストールオプションで選択しておく
- ActivePerl のディレクトリからファイルをコピー
- yaml の作成
global: plugin_path: - C:\Perl\site\lib\Plagger\Plugin assets_path: C:\Perl\site\lib\Plagger\assets timezone: Asia/Tokyo log: level: debug plugins: - module: Subscription::Config config: feed: - url: http://del.icio.us/rss/naltan - module: Filter::POPFile rule: module: Fresh mtime: path: C:\home\.plagger\cache\plagger-popfile.tmp autoupdate: 1 config: proxy: http://localhost:8081/RPC2 encoding: euc-jp // shiftjis とかやって悲しくなった training: 1 # - module: Filter::TagsToTitle # config: # add_to: left # - module: Filter::Rule # rule: # module: EntryTag # tag: # - perl # - plagger # op: OR - module: Publish::Pipe config: command: c:\cygwin\bin\cat.exe
感想
POPFile の履歴ページから再分類する作業がちょっと面倒な気がしました。どうにかならんかな。鍛えれば再分類する回数が減ると信じてちょっとトレーニングしてみよう。あと、タグなんかも POPFile に渡さないと駄目か。
del.icio.us の巡回 RSS を食わせてプライベートのはてブに食わせてみた。そのうち spam は送らないようにルールを書き足そう。いちおう本文にタグを追加して POPFile が認識できるようにしてみた。
Filter::DeliciousFeedTags が POPFile よりも先に適用されるようにして
my @tags = @{$args->{entry}->tags}; my $tag_string = @tags ? join(',', map "$_", @tags) : ''; $text .= "\n" . $tag_string;
こんなのを POPFile の write_tempfile() の適当なところに追加。
- $tag_string を encode しないように修正
しかし、こんなものをパブリッシュにするには重複チェックをきっちりいれないとどっかの bot と無限ループをはじめそうだ。これは irc の #bot チャンネルと同じか。bot は notice で発言しなさいと昔の人はいいました、と。
はてなの注目エントリーをつっこんで動きがびみょーだったので、RSS みたらエントリに日時情報なんてついてなかった。これがはてなの仕掛けた罠だというのか。思わず Aggregator::Simple のコードを読んで XML::Feed の API まで確認してしまったというのに無駄だった。
Filter::Rule でエントリーを刈り取った後に Filter::DeliciousFeedTags などが出来なくて悲しかった。update に hook する別の Rule を作ればええんかなー。...だめだった。update より前にフェーズを追加してそこに Rule を hook せんと entry を削ったりするようなんは危ないな。とりあえずは POPFile みたいに専用 rule を持たせとくか...。
POPFile って1つのメールを複数のカテゴリに分類はできないのかな。閾値が一定値以上のカテゴリを取得できたりするんだろうか。
あと自分の del.icio.us の RSS なのに思わず spam 分類したくなるエントリーがあったのが悲しかった。情報は生ものだね。rotten という分類にしとくべきなのか。 (注: 間違った分類の仕方)