すがブロ

sugamasaoのhatenablogだよ

はてなダイアリーから RSS のデータを取得してみる

ふと思い立ったので

はてなダイアリーで配信している RSS を取得してみようと思った。
で、ここ(http://d.hatena.ne.jp/adamrocker/20070129/hatena_bookmark_rss_elements_ruby)を参考に書いてみた。

require 'open-uri'
require 'rss/1.0'

hatena_diary = 'http://d.hatena.ne.jp/seiunsky/rss'

rss = open(hatena_diary) { |file|
  RSS::Parser.parse(file.read)
}

rss.output_encoding = "Shift-JIS"

rss.items.each do |field|
  puts "[title]" + field.title
  puts "[link]" + field.link
  puts "[description]" + field.description
end

基本的にはタイトルと本文を取得できれば良いと思ったのだけど、なんだか「description」タグでは要約された本文しか取得できてないっぽい。
どうやったら全文を取得できるんだ。
「content:encoded」タグで全文を取得できるっぽいんだけど、イマイチ取得するための書き方がわからんかった。。。
dc:xxxフィールドなら require 'rss/dublincore' した後で zz.dc_xxx で値を取得すれば良さそうなんだけどな。