RubyでRSS

Ruby-1.8.4から標準でRSSパーサ(生成も可)が入っているので、それを使ってみる。
http://www.cozmixng.org/~rwiki/index.rb?cmd=view;name=RSS+Parser%3A%3ATutorial.ja

  • RSSのパース
require 'rss/1.0'
require 'rss/2.0'
require 'rss/dublincore'
require 'rss/syndication'
require 'rss/content'
require 'rss/trackback'

rss = nil
begin
  rss = RSS::Parser.parse(rss_source)    # rss_sourec : url, file
rescue RSS::InvalidRSSError
  rss = RSS::Parser.parse(rss_source, false)
end
require "rss/maker"

ver = "1.0"   # RSS Version : 0.9 / 1.0 / 2.0
rss = RSS::Maker.make(ver) do |maker|
  maker.encoding = "EUC-JP"     # encode : default(UTF-8)
  maker.channel.language = "ja" # for RSS 0.9
  maker.channel.about = "http://example.com/index.rdf"
  maker.channel.title = "Example"
  maker.channel.description = "Example Site"
  maker.channel.link = "http://example.com/"

  item = maker.items.new_item
  item.link = "http://example.com/article.html"
  item.title = "Sample Article"
  item.date = Time.parse("2006/12/13 20:00")

  item = maker.items.new_item
  item.link = "http://example.com/article2.html"
  item.title = "Sample Article2"
  item.date = Time.parse("2006/12/13 20:10")
end

こんな感じ。それにしても、コピペし過ぎ。(笑)