このレシピをPlaggerでGmailへ送ってみました。
クックパッドはRSSは配信していませんが、Subscription::Config と Rule::Deduped でいい感じにできました。
こんな使い方もありでしょうか?
ちなみに、「ピックアップレシピ」とは、日替わりで掲載しているお勧めレシピです。
メールマガジン「れぴまが」で毎日配信していますが、メールには画像はありません。
「ホットなレシピ」とは、このレシピをつくりましたっていうレポートが10個以上になったものがピックアップされています。
CookbookDedupeEntries - Plagger - Trac で紹介されている Rule::Deduped で重複エントリーを削除しています。
初めて実行するとトップページの14件全てが送られてきますが、
次からは Rule::Deduped のおかげで、新しいものだけが送られます。
毎日一回か、2日に一回くらい実行するとちょうどいいんじゃないでしょうか。

メールには画像も表示されるので、見やすくていいです。
後から検索もできて使いやすいし。
config-cookpad.yaml
global:
plugin_path:
- C:\Perl\site\lib\Plagger\Plugin
assets_path: C:\Perl\site\lib\Plagger\assets
timezone: Asia/Tokyo
log:
level: debug
cache:
base: C:\plagger
plugins:
- module: Subscription::Config
config:
feed:
- url: http://cookpad.com/
meta:
follow_link: /recipe/
- module: CustomFeed::Simple
- module: Filter::Rule
rule:
module: Deduped
path: C:\plagger\dedupe-cookpad.db
- module: Filter::EntryFullText
- module: Filter::BreakEntriesToFeeds
- module: Publish::Gmail
config:
mailto: example+cookpad@gmail.com
mailfrom: example@gmail.com
mailroute:
via: smtp_tls
host: smtp.gmail.com:587
username: example@gmail.com
password: Gmail_PASSWORD
Filter-EntryFullText\cookpad.yaml
yamlの書き方がよくわからないので他のを参考に見よう見まねです。
# COOKPAD author: Shigefumi handle: http://cookpad\.com/recipe/ extract: <title>(.*?)\[クックパッド\].*?<div id="recipe_detail">(.*?)<div style="float:right; margin-top:10px;"> extract_capture: title body[2006年 8/27 追記]
コメント参照。8/10にotsuneさんにcommitして頂きました。
/trunk/plagger/assets/plugins/Filter-EntryFullText/cookpad.yaml - Plagger - Trac
[追記ここまで]
ただし、このままでは、メールの差出人と件名が両方とも、トップページのタイトルの
「[クックパッド] 簡単おいしいみんなのレシピが10万品!」となってしまいます。
いろいろ試したのですが、うまく変更できませんでした。
しょうがないので、
やどりぎ@NET: Plaggerでフィードをエントリごとに分割してGmailに送る
パッチが
Filter::BreakEntriesToFeeds
に取り込まれる前の Revision 580 の BreakEntriesToFeeds を使っています。
いい方法があれば教えてください。
[2006年 8/27 追記]
Changeset 1143
以降の BreakEntriesToFeeds であれば、メールの件名をフィードのタイトルではなく、
エントリのタイトルにするのに config:use_entry_title が使えます。
config-cookpad.yamlの BreakEntriesToFeeds の部分は、以下のようにしました。
- module: Filter::BreakEntriesToFeeds
config:
use_entry_title: 1
[追記ここまで]
このブログのCOOKPAD関連記事:
StylishでCOOKPADの印刷ページを整形
COOKPADのレシピIDをGreasemonkeyでリンクにする
[2007年 5/10 追記]
COOKPAD側で変更があったので、内容が送れなくなっていました。
以下のように、Filter-EntryFullText\cookpad.yaml の extract行の <div id="recipe_detail"> を <div id="recipe_detail" class="clr"> に変更すればOKでした。
コメントで教えていただいた、りこさん、ありがとうございました。
# COOKPAD author: Shigefumi handle: http://cookpad\.com/\w+/recipe/\d+/ extract: <title>(.*?)\[クックパッド\].*?<div id="recipe_detail" class="clr">(.*?)<div style="float:right; margin-top:10px;"> extract_capture: title body
[2008年 9/7 追記]
COOKPAD側で変更があったようで、内容が送れなくなっていました。
Filter-EntryFullText\cookpad.yaml を以下のように変更すればOKでした。
(ただ、いくつかのレシピで、内容がうまく送れていないものがありましたが、原因はよくわかりません)
てつさん、コメントで教えていただき、ありがとうございました。
# COOKPAD author: Shigefumi handle: http://cookpad\.com/recipe/\d+ extract: <title>(.*?)\[クックパッド\].*?(<div id="main-photo">.*?)<div id="tsukurepo"> extract_capture: title body
あと、バックナンバーのリンクが送られないように config-cookpad.yaml の follow_link の行は以下のように \d+ を追加しました。
follow_link: /recipe/\d+











handle: http://cookpad\.com/\w+/recipe/\d+/
じゃ無いと動作しなくなっていました。
あとcommitしますがOkですよね?