おぎやす広辞苑
mindiaおぎやす広辞苑記事

RubyでRSSを読み込んで表示

おぎやす · 2009-10-09

ぶっちゃけRuby良くわからない。

だけど、こんな事がしたかったんだな。

ってことで、いろいろ調べてた。

Ruby RSS取得

って調べたら色々出てきた。

お、これなんかいけそうじゃね?

http://d.hatena.ne.jp/akio0911/20080127/1201412414

と思ってそのまま使ってみたんだけど、なんか取得したRSSがまんま表示される。

いや、俺はtitleとdescriptionとlinkだけが欲しいんすよ。

しかもrhtml内に書き込むんで、ちょっと書き方違うっぽいな。

ってことで、頑張って書き換えてみた。

多分見る人が見たら、なんだこれって思うかもw

なんとなく無理やり・非効率な感じがしそう。

>|ruby|
<% require 'rss'
require 'open-uri'

open('http://mindia.jp/book/ogiyasu/rss/type/keyword.rdf') do |http|
response = http.read

result = RSS::Parser.parse(response, false)

result.items.each_with_index do |item, i|
%>

<% if i < 5 %>
<h2><span style="color:#666;"><%= item.dc_date.strftime("%Y-%m-%d") %></span> <%= item.title %></h2>
<p><%= item.description %></p>
<% end %>
<% end %>
<% end %>
||<

とりあえず苦戦したとことしては、dc_dateのとこ。
titleとdescriptionは普通に取得できたんだけど、どしてもdcのdateが取得したかった。

結局

require 'rss/2.0'
require 'rss/1.0'

だと取得できなかったけど、

rquire 'rss'

だと取得できたぞー。

あと、ぶっちゃけrhtml内で<% end %>とかループとかよくわからん!

まぁ、結果オーライってことで。

見出し語