MacにPlaggerをインストールしてMixi日記をGmailで読めるようにするまでをまとめる

ようやくちゃんとPlaggerも動くようになったので、これまでにやってきた無駄な要素を省いて、Plaggerインストールからマイミク日記をGmailで送信までをまとめてみる。

  • Xcodeのインストール

最初にこれ。MacOSのインストールDVDからインストールしてくる。難しいことは何もない。

  • CPANの初期設定

http://fuji.sakura.ne.jp/~yada/talk2000/perl.shtml
これを参考にするとよい。


気をつけるのはCPANのキャッシュサイズ
Cache size for build directory (in MB)? [10]
とか聞かれるが、ここは大きめの値を設定する。(俺は無駄に1000Mとか設定しておきました)




ここで何か間違えてしまった場合は、後で設定を変更することも出来る。ターミナル上で

sudo perl -MCPAN -e shell
cpan>o conf

で現在の設定がわかるので、後で直接設定ファイルを編集してしまえば良い。
一番はじめの行に
CPAN::Config options and /Users/username/.cpan/CPAN/MyConfig.pm:
みたいに表示されるので

vi /Users/username/.cpan/CPAN/MyConfig.pm

で編集。viの操作方法はがんばって覚える。
とりあえず
http://atlas.kek.jp/physics/nyumon/vi-commands.html
だけわかればなんとかなる。

  • CPAN依存モジュールのインストール

これが結構手間。
また、CPANPlaggerをインストールしたら、バージョンが古くて見事にはまったので、CPANからのインストールはしない。

sudo perl -MCPAN -e shell
cpan>test Plagger

こんな感じで、足りないモジュールが表示される。(テストを途中で止める場合などは Control+cで可能)

- Yaml                           ...loaded. (0.62)
- YAML::Loader                   ...loaded. (0)
- Test::More                     ...loaded. (0.65 >= 0.42)
- Test::Base                     ...loaded. (0.52 >= 0.52)
- Class::Accessor::Fast          ...loaded. (0.30)
- File::Find::Rule               ...missing.
- UNIVERSAL::require             ...loaded. (0.11 >= 0.1)
- Template                       ...missing. (would need 2.13)
- Template::Provider::Encoding   ...missing. (would need 0.04)
- YAML                           ...loaded. (0.62 >= 0.39)
- Text::Tags                     ...missing.

で、missingって出てるモジュールを手動でインストールしまくる。かなり手間かかる。
exp.

cpan>install File::Find::Rule

これでインストール。これでもインストールできないモジュールがある。
それらはのモジュールは、インストール中に何かモジュールが足りない、と言ってきている場合があるので、その場合はそのモジュール単体で先にインストールしてみる。


どうしてもインストールできないモジュールは

cpan>force install モジュール名

で無理矢理インストールするしかない。


自分の環境だと

はforce install でないとインストールできなかった。


全部のインストールが終わったら、ようやくPlaggerをインストール。


ここまで書いておいてなんだが、正直
http://blog.8-p.info/articles/2006/09/06/plagger-mac
を使った方が遙かに楽。でも頑張る。UNIX全般、PerlCPANの勉強を兼ねているのだ。

  • Plagger最新版をとってくる
svn co http://svn.bulknews.net/repos/plagger/trunk/plagger
cd plagger
perl Makefile.pl

ここで、なぜか色々と

  • ARRAY(0xa9b9cc) ...missing.

みたいなのが出てくる。多分エンコード系のモジュールが足りないのでは無いかと思う。
必要なモジュールがすべてインストールされていれば問題ないのですべて「n」で通す。

make install

Plaggerインストール完了。


ここは未だによくわかっていないが、

plagger -v


Plagger version 0.7.17
とちゃんと出れば問題なし。

  • 設定ファイルを書く。

テキストエディタを使って、config.yamlを作る。
場所はどこでもいいが、~/plagger/config.yamlにした。

global:
  assets_path: /Users/ユーザー名/plagger/assets/
  timezone: Asia/Tokyo

plugins:
  - module: CustomFeed::MixiScraper
    config:
      email: ミクシィのメアド
      password: パスワード
      fetch_body: 1
      show_icon: 1
      feed_type:
        - FriendDiary
        - RecentComment
        - Message
  - module: Filter::Rule
    rule:
      module: Deduped

  - module: Publish::Gmail
    config:
      mailto: 送りたいメアド
      mailfrom: メールの送信者(何でもよし)
      mailroute:
        via: smtp_tls
        host: smtp.gmail.com:587
        username: GmailのユーザID
        password: Gmailのパスワード

インデントにものすごく気をつける。インデントがずれてると動かない。
タブ、全角スペースなどもってのほか。全て半角スペースを用いる。

  • テストしてみる
~/plagger/plagger -c ~/plagger/config.yaml

これでメールが届けばおk。

  • cronで勝手に起動するようにする

CronniXを使う。
もちろん普通にcron設定すれば問題なし。


なにか間違っているところとかあれば、ご指摘いただければ幸いです。


それにしてもここ数日はPlagger漬けだったなぁ。