Ruby で RSS からリンクを抽出する方法

ブログなどの RSS をパースしてゴニョゴニョするための gem を探そうとしたけど、パーサなら Ruby1.9 の標準ライブラリで既に提供されていた。

require "rss"

class RssInput
  def initialize(config)
    @url = config[:url]
  end

  def call
    result = RSS::Parser.parse(@url)
    result.items.map{ |item| item.link }
  end
end

rss = RssInput.new(:url => "http://d.hatena.ne.jp/griefworker/rss")
puts rss.call

RSS からタイトルやリンクを抽出するだけなら、これで十分だな。Ruby の標準ライブラリは以前より充実してきてうれしい限り。このまま Python 並に揃えて欲しいね。