Mixiでも巡回させようかとPlaggerをインストールしてみる。
参考にしたのはしげふみメモ : Windowsで簡単にPlaggerをインストールする方法
ActivePerlをDLしてインストール
ぐぐるとこれがTOPに出てきた。バージョンは最新の5.8.8.820。
http://www.forest.impress.co.jp/lib/stdy/program/progdevenv/activeperl.html
特に何も考えずにYes連打でインストール終わり。
コマンドプロンプトを立ち上げて
c:\>perl -v This is perl, v5.8.8 built for MSWin32-x86-multi-thread (with 18 registered patches, see perl -V for more detail) ・・
とかでればおk
やっぱActivePerlはらくだね。
PPMリポジトリの追加
サイトによると
c:\> ppm
と打つと
ppm>
とかなって対話式になるみたいなんだけどGUIのPPM画面が表示されちゃいました。。
PPMのバージョンが4に上がったんでGUIになったみたい。( Perl Package Manager, version 4.01)
画面から操作しても問題ないんだけど味気ないのでやっぱコマンドラインから操作。
しかもリポジトリの登録法も変わっているので注意。
ppm rep add tcool http://ppm.tcool.org/server/ppmserver.cgi?urn:PPMServerppm rep add tcool http://ppm.tcool.org/archives/
リポジトリも追加できたところでPlaggerをインストールしようとしたら
C:\>ppm install Plagger Downloading ActiveState Package Repository packlist...failed 500 Can't connect to ppm4.activestate.com:80 (connect: Unknown error)
てな感じでインストールがとまる。
サイトが落ちてるのかとブラウザからppm4.activestate.comにアクセスしてみるとうまくいく。
てことはPPMの通信をだれかが遮ってるってことだ。考え付くのはウイルスセキュリティーしかなかったのでウイルスセキュリティーのFWを一時的に開放してみたところうまくいった。
ブロック対象にもでてこないし、警告ログも出ずにブロックされてて分かりずらい。。。
ウイルスセキュリティーはKAIでも使えなかったり微妙だな。。
んで気を取り直してインストール
C:\>ppm install Plagger Downloading ActiveState Package Repository packlist...not modified Downloading Plagger-0.7.17...done Downloading DateTime-0.35...done
後は勝手にやってくれる。依存のあるものも全部持ってきてくれるので便利。Maven2といいgemといい便利だね。尚、途中[yes]みたいな感じで聞いてきたらエンターで問題ない。
ちなみに8/11時点で最新のPlaggerは0.7.17
インストールも終わったんで起動してみましょう。
C:\>plagger 'plagger' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
あり?うごかない。
「C:\Perl\bin」配下を見てみるとplagger.batがない。
インストール失敗??とか思いながらディレクトリを見てみると「C:\Perl\site\bin」の下にあった。
PPM4になったから色々変わっているみたい。
C:\>cd C:\Perl\site\bin C:\Perl\site\bin>plagger -v Plagger version 0.7.17
起動おっけ〜
config.ymalの作成
「C:\Perl\site\bin」にテキストファイルを新規作成して名前を「config.ymal」に変更する。
とりあえずHelloWorld的に以下内容を書いてみる。
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
Gmailのあて先とかパスワードは任意に変更する。
んじゃ実行!
C:\Perl\site\bin>plagger YAML Error: Stream does not end with newline character Code: YAML_PARSE_ERR_NO_FINAL_NEWLINE Line: 0 Document: 0 at C:/Perl/site/lib/YAML.pm line 33
おっとお約束なエラーだwこれはymalの最後に改行が入っていないエラー。
ちゃんと改行を入れて動かすと
C:\Perl\site\bin>plagger Plagger [debug] C:\Perl\site\lib\Plagger・・・
おお動いた!しかし
Plagger::Plugin [fatal] file error - gmail_notify.tt: not found at line 144
てな感じでエラーgmail_notify.ttがなくちゃだめなのね。。