feedzirra を使用して rss/atom フィードを取得しようとしていますが、feedzirra が更新を見つけられないようです。まず、新しいフィードを取得し、返された構造をファイルにダンプします。
require 'rubygems'
require 'yaml'
require 'feedzirra'
feed = Feedzirra::Feed.fetch_and_parse("http://rss.slashdot.org/Slashdot/slashdot")
File.open('slashdot.yaml','w'){|f| f.puts feed.to_yaml}
次に、フィードが更新されるまでしばらく待ってから、次のことを試します。
require 'rubygems'
require 'yaml'
require 'feedzirra'
feed = YAML.load_file('slashdot.yaml')
puts feed.entries.first.published
updated_feed = Feedzirra::Feed.update(feed)
puts updated_feed.new_entries.first.published
all_new = Feedzirra::Feed.fetch_and_parse("http://rss.slashdot.org/Slashdot/slashdot")
puts all_new.entries.first.published
これにより、次の結果が得られます。
2013 年 4 月 4 日木曜日 15:28:00 UTC 2013 年 4 月 4 日木曜日 15:28:00 UTC 2013 年 4 月 4 日木曜日 21:50:00 UTC
3 行目は、利用可能な新しい投稿があることを確認しますが、Feed.update はそれらを表示しません。
私は何を間違っていますか?