CustomFeed::Configを使ってTECHSIDEをPlaggerする
せっかくPlaggerをインストールしたことだしというわけで、
いつも見ているニュースサイトをPlaggerしてみた。
CustomFeed::Configのダウンロード
まず、RSS等を配信していないサイトでも取り込めるようにするために、
CustomFeed::Configをダウンロードしてくる。
[Seacolors's Labs.]さん
http://plagger.g.hatena.ne.jp/Seacolor/
$ cd /usr/lib/perl5/site_perl/5.8.6/Plagger/Plugin/CustomFeed/ $ wget http://seacolorswind.sakura.ne.jp/blog/development/Config.pm |
YAML作成
サイトを取得するためのYAMLを作成する。
$ cd ~/plagger # 好きな場所で $ vim news.site.yaml global: assets_path: /usr/lib/perl5/site_perl/5.8.6/Plagger/assets timezone: Asia/Tokyo
plugins: – module: Subscription::Config config: feed: – http://techside.net/bbsf.html
– module: CustomFeed::Config
– module: Filter::ResolveRelativeLink
– module: Filter::Rule rule: module: Deduped compare_body: 1
# – module: Publish::Debug
– module: Publish::Gmail config: mailto: hoge@gmail.com mailfrom: hoge@hoge.com mailroute: via: sendmail host: /usr/sbin/sendmail |
assets作成
取得したサイトごとに、設定ファイルを記述してあげる必要がある。
techsideの場合は以下のようになる。
$ mkdir /usr/lib/perl5/site_perl/5.8.6/Plagger/assets/plugins/CustomFeed-Config $ cd /usr/lib/perl5/site_perl/5.8.6/Plagger/assets/plugins/CustomFeed-Config $ vim techside.yaml author: labs.zsrv.net match: http://techside.net/ extract: <A href="(.*?)">[x{25bc}|x{25a0}]</A>(.*?)(<br|<tr) extract_capture: link body |
メモ
techsideの場合、文字コードが違うためなのかextractに日本語を書いても
(今回▼と■でマッチさせたかった)マッチできなかった。
初めてのYAMLということもあって、どうすればよくわからなかったが、
Publish::Debugにすることによって、どういうデータが流れてきているかが
解った。
Publish::Debugにしてデータを見てみると、▼と■が以下で扱われている
ことがわかった。
▼->x{25bc}
■->x{25a0}
参考:
http://d.hatena.ne.jp/toshi123/20060911#p1
Read more
Popularity: 1% [?]