the*_*gah 5 xml ruby-on-rails nokogiri xml-parsing
我看了很多,但这个似乎让我在哪里
调节器
def index
require 'nokogiri'
doc = Nokogiri::XML(open("http://sports.yahoo.com/top/rss.xml"))
@links = doc.xpath('//item').map do |i|
{'title' => i.xpath('title'), 'link' => i.xpath('link'), 'description' => i.xpath('description')}
end
end
Run Code Online (Sandbox Code Playgroud)
视图
<ul>
<%= debug @links.each.first %>
</ul>
Run Code Online (Sandbox Code Playgroud)
调试输出
{"title"=>[#<Nokogiri::XML::Element:0x8199ce34 name="title" children=[#<Nokogiri::XML::Text:0x8199c6f0 "Kolb to get start for Eagles vs. Falcons (AP)">]>], "description"=>[#<Nokogiri::XML::Element:0x8199b660 name="description" children=[#<Nokogiri::XML::Text:0x8199a594 "Kevin Kolb will make his second straight start in place of the injured Michael Vick when the Philadelphia Eagles host Atlanta on Sunday. Eagles coach Andy Reid says Vick practiced Friday for the first time since sustaining a rib cartilage injury on Oct. 3. There's a chance Vick will be the backup quarterback against his former team.">]>], "link"=>[#<Nokogiri::XML::Element:0x81999f40 name="link" children=[#<Nokogiri::XML::Text:0x81999b58 "http://us.rd.yahoo.com/sports/rss/top/SIG=11npql9k5/*http%3A//sports.yahoo.com/nfl/news?slug=ap-eagles-qbs">]>]}
我需要的是循环链接数组并使用标题和链接访问哈希,但我不知道如何做到这一点.
dj2*_*dj2 11
如果我理解正确,你只需要从xpath节点获取内部文本.
{'title' => i.xpath('title').inner_text,
'link' => i.xpath('link').inner_text,
'description' => i.xpath('description').inner_text
}
Run Code Online (Sandbox Code Playgroud)
.......
| 归档时间: |
|
| 查看次数: |
9894 次 |
| 最近记录: |