pragger で XML のパースエラーと iconv
この日記の RSS から "雑記" に一致するものを取得して、RSS で保存。
という設定で実行してみたけれども、XML のパースエラーと iconv ライブラリがなくて、
うまくいかなかった。
iconv は、プラグインで RSS::load を使うと必要らしく。
vim で使っているものでやってみたら、iconv のエラーはなくなったが、
XML のパースエラーが発生した。
おくればせながら、設定ファイルはこちら。
- module: RSS::load config: url: http://d.hatena.ne.jp/gtaka555/rss - module: Filter::grep config: regex: "雑記" - module: RSS::save config: filename: gtaka555.rdf
XML のパースエラーが発生したときのメッセージ。
C:\home\opt\pragger>ruby pragger.rb -c hatena.yaml exec plugin RSS::load C:/home/opt/ruby/lib/ruby/1.8/rss/rexmlparser.rb:24:in `_parse': This is not well formed XML (RSS::NotWellFormedError) "dc:creator>gtaka"... from C:/home/opt/ruby/lib/ruby/1.8/rss/parser.rb:163:in `parse' from C:/home/opt/ruby/lib/ruby/1.8/rss/parser.rb:78:in `parse' from plugin/RSS/load.rb:30:in `load' from plugin/RSS/load.rb:28:in `collect' from plugin/RSS/load.rb:28:in `load' from pragger.rb:28:in `send' from pragger.rb:28:in `eval_pragger' from pragger.rb:13:in `inject' from pragger.rb:26:in `each' from pragger.rb:26:in `inject' from pragger.rb:26:in `eval_pragger' from pragger.rb:42
使っていた ruby のバージョンは、
ruby-1.8.5-20061102-i386-mswin32
中途半端なものを使っていたな。
脆弱性も発見されたことだし、更新することにした。
そんなわけで、こちらにバージョンアップした。
ruby-1.8.6-p111-i386-mswin32
そうしたら、うまくいった。
C:\home\opt\pragger>ruby pragger.rb -c hatena.yaml exec plugin RSS::load exec plugin Filter::grep exec plugin RSS::save