かねだみかのぶっぶろぐ+をGmailで読む その1

LDRRSSをチェックしているのですが、「かねだみかのぶっぶろぐ」から「かねだみかのぶっぶろぐ+」にバージョンアップしたときに画像が見れなくなってしまいました。
そこでPlaggerを使ってRSSからエントリの本文を取得することで画像が見れるようにしてみたいと思います。チェックはGmailでってことになりますが。。。

- module: Subscription::Config

とりあえず「かねだみかのぶっぶろぐ+」の右下のhttp://ameblo.jp/p_skin/cmn/img/xml2_icon.gifアイコンのリンクURLをコピーして

  - module: Subscription::Config
    config:
      feed:
        - http://ameblo.jp/kaneda-mika/rss20.xml

- module: Publish::Gmail

Gmailで送信してみる。

  - module: Publish::Gmail
    config:
      mailto: ????????@gmail.com
      mailfrom: ????????@gmail.com
      mailroute:
        via: smtp_tls
        host: smtp.gmail.com:587
        username: ????????@gmail.com
        password: ????????

一通送信されました。内容を見てみると、、、あれっ?画像表示されてる。。。なんで?

LDRに登録してあるURLを調べるとhttp://ameblo.jp/p_skin/cmn/img/xml_icon.gifのものでした。
登録するときにはBookmarkletを使ったのですが、Bookmarkletは対象ページのヘッダにかかれているlinkタグからURLを抽出するようで、ヘッダにはhttp://ameblo.jp/p_skin/cmn/img/xml_icon.gifのリンクURLしか書かれていなかったのです。
http://ameblo.jp/p_skin/cmn/img/xml2_icon.gifのリンクURLを手作業で登録したらLDRでも画像が表示されました。

- module: Filter::BreakEntriesToFeeds

さて、思いがけなく問題が解決してしいましたが、このまま続けたいと思います。
但し、本文を取得する必要がなくなったので、module: Filter::EntryFullTextについてはまた今度。

今のままだと、エントリが増えると一通のメールが大きくなってしまうので、エントリごとに出力したいと思います。
そんなときは、これ。一つのfeedをエントリごとに分割して複数のfeedにしてくれます。

  - module: Filter::BreakEntriesToFeeds

エントリごとに複数のメールが送信されました。
でもSubjectが全部「かねだみかのぶっぶろぐ+」です。なんとかならないでしょうか。
BreakEntriesToFeeds.pmを見てみると、use_entry_titleというオプションがありました。
分割して生成したfeedのタイトルを各エントリのタイトルに差し替えてくれるようです。

  - module: Filter::BreakEntriesToFeeds
    config:
      use_entry_title: 1

Subjectが各エントリのタイトルになりました。

- module: Filter::Rule

さてさて、ここまでで、feedをエントリごとに分割してSubjectを各エントリのタイトルにしてメール送信することができるようになりました。
しかし、このままだとfeedが更新されなければ、実行するたびに同じものが送信されてしまいます。
同じものがいくつもあったらチェックするがいやになりますよね。
そんなときは、これ。重複するfeedを削除してくれます。

  - module: Filter::Rule
    rule:
      module: Deduped

一度出力したfeedの情報はカレントディレクトリのDeduped.dbというファイルに保存されるようです。