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
- RSSの生成
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
こんな感じ。それにしても、コピペし過ぎ。(笑)