WindowsでPlaggerを試してみました。

インストールはしげふみメモ:Windowsで簡単にPlaggerをインストールする方法を参考にさせていただきました。

  • OSはWindows2000 Professional。
  • ActivePerlはv5.8.7がインストール澄み。
  • コマンドラインからppmを起動し、リポジトリを追加。Plaggerのバージョンは[0.7.10]になっていました。
  • ppmのプロンプトからinstall Plagger。途中OpenSSLのライブラリなどをインストールするか訊かれますが、全てリターンで1時間弱で終了。
  • コマンドラインからplagger -vとすると、めでたくPlagger version 0.7.10と表示されました。
  • module追加は、追記にあるように必要なし。
  • assetsをコピーするために、Plagger-0.7.9 - search.cpan.orgにアクセス。但し、前述のとおりバージョンが[0.7.10]なのでOther ReleasesのリストボックスからPlagger-0.7.10 -- 29 Aug 2006を選択してGoto。Plagger-0.7.10をDownload。
  • Downloadしたファイルを解凍し、assetsのフォルダをPerl/site/lib/Plagger以下にコピー。

以上でインストールは終了。次は動作確認です。

動作確認もしげふみメモ:PlaggerでYahooのTOEICデイリーミニテストをGmailへ(改訂版)を使わせていただきました。

  • config-yahoo-toeic.yamlの内容をコピーして、gmailのアドレスとパスワードを自分のものに変更。plugin_pathとassets_pathは同じなので変更無し。base: C:\plaggerとあったので、とりあえずC:\plaggerを作成して、そこにconfig-yahoo-toeic.yamlを置きました。Filter-EntryFullText\yahoo-toeic.yaml,yahoo-toeic-answer.yamlもとりあえずC:\plaggerの下に。
  • さて、実行するにはどうしたらよいのでしょう?そこまでは書いてありません。
    • コマンドラインplaggerリターンとするとconfig.yamlが無い、と怒られます。たぶんデフォルトのconfigファイルなのでしょう。
    • では、config-yahoo-toeic.yamlを指定するには?検索したらありました。-cオプションです。
    • plagger -c config-yahoo-toeic.yamlリターン。
  • エラーになりました。
    • Plagger [error] http:〜 is not aggregated by any aggregator
    • なんでしょう。コンテンツの取得ができないのでしょうか?

とりあえず、もう少し簡単なもので試すことにしました。
雑誌「まるごとPerl!vol.1」に掲載されているrss2email.yamlです。あるサイトのRSSを取得してメールに変換して送信するものです。

  • rss2email.yamlの内容をコピーして、gmailのアドレスを自分のものに変更。今度はあて先だけで、パスワードの記述はありません。
  • plagger -c rss2email.yamlリターン
  • エラーになりました。
    • でも先ほどと違って、aggregateは成功し、gmailプラグインでエラーとなっているようです。
    • Plagger::Plugin [fatal] file error - gmail_notify.tt: not found at line 144
    • gmail_notify.tt ? なんでしょう? 探してみるとassets/plugins/Publish-Gmailにありました。
    • そういえば、globalの設定がありませんでした。assets_pathが設定されていないためのエラーと思われます。
    • config-yahoo-toeic.yamlからglobalの設定をコピーします。
  • 再度実行。
  • エラーになりました。
    • 今度は送信失敗。
    • Plagger::Plugin::Publish::Gmail [error] Error while sending emails: Failed to connect to mail server: Bad file descriptor at 〜
    • サーバに接続できないようです、っていうかサーバの指定してないし。。。未熟
    • config-yahoo-toeic.yamlからmodule: Publish::Gmail以下をコピーします。
  • 再々度実行。
  • 成功です。

さて、rss2email.yamlでコンテンツが取得できることは確認できました。
では、config-yahoo-toeic.yamlがエラーとなるのはなぜなのでしょう?

  • そういえば、プラグインの設定ファイルはassets_pathで指定されるパスに置く必要があるようです。
  • Filter-EntryFullTextもそうでしょうか。assets/plugins/Filter-EntryFullTextというフォルダがありました。
  • base: C:\plaggerという設定があったのでてっきり、この配下に置けばよいのかと思っていました。
    • よく観ると、cashe: base: C:\plaggerでした。
    • たしかにC:\plagger\cacheが作成されている。。。未熟
  • yahoo-toeic.yaml,とyahoo-toeic-answer.yamlをassets/plugins/Filter-EntryFullText以下にコピー。
  • plagger -c config-yahoo-toeic.yamlリターン
  • 成功です。

とりあえず、いろいろ未熟な点もありましたが動作確認もできました。

まるごとPerl! Vol.1

まるごとPerl! Vol.1