11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# File 'lib/syobocal/rss.rb', line 11
def parse()
= REXML::Document.new()
result = Result.new
channel = .elements["rdf:RDF/channel"]
result.title = channel.elements["title"].text
result.link = channel.elements["link"].text
result.description = channel.elements["description"].text
.elements.each("rdf:RDF/item") { |item|
tv = item.elements["tv:feed"]
result << {
:about => item.attribute("rdf:about").to_s,
:title => item.elements["title"].text,
:link => item.elements["link"].text,
:description => item.elements["description"].text,
:dc_date => Time.parse(item.elements["dc:date"].text),
:dc_publisher => item.elements["dc:publisher"].text,
:tv_genre => tv.elements["tv:genre"].text,
:tv_start_datetime => Time.parse(tv.elements["tv:startDatetime"].text),
:tv_end_datetime => Time.parse(tv.elements["tv:endDatetime"].text),
:tv_iepg_url => tv.elements["tv:iepgUrl"].text,
:tv_performer => tv.elements["tv:performer"].text,
}
}
result
end
|