Ruby on rails 解析包含多个元素的atom/rss提要<;链接>;RoR上带有Haml的标签

Ruby on rails 解析包含多个元素的atom/rss提要<;链接>;RoR上带有Haml的标签,ruby-on-rails,parsing,rss,haml,Ruby On Rails,Parsing,Rss,Haml,因此,首先,这里是我试图解析的Atom提要片段: // http://somelink.com/atom <feed xmlns="http://www.w3.org/2005/Atom"> <entry> <title>Title Here</title> <link href="http://somelink.com/link1&amp;amp;ref=rss" rel="altern

因此,首先,这里是我试图解析的Atom提要片段:

// http://somelink.com/atom   
<feed xmlns="http://www.w3.org/2005/Atom">
    <entry>
        <title>Title Here</title>
        <link href="http://somelink.com/link1&amp;amp;ref=rss" rel="alternate" />
        <link href="http://somelink.com/link2&amp;amp;ref=rss" rel="tag:somelink.com/apply_url"/>
    ...
    </entry>
然后我在视图中输出响应,我正在使用Haml编写该视图,如下所示:

- @rss.entries.each do |item|
  .title-div
    = item.title
  .title-link
    = item.link //outputs the first link
我可以为链接运行第二个循环,但是有没有办法在没有它的情况下获得第二个链接?比如读取“rel”属性并输出正确的链接?在Haml/Rails中如何执行此操作


编辑:我正在使用的gem:

我不熟悉该gem,但您是否尝试过
项目。链接
以查看每个项目是否提供链接集合?

我从未使用过Simplers,但您可能可以尝试一下?然后可以运行XPath查询,仅选择具有正确属性的链接。Nokogiri的一个例子:

atom_doc = Nokogiri::XML(open("http://www.example.com/atom.xml"))
atom_doc.xpath("/xmlns:feed/xmlns:entry/xmlns:link[@rel='tag:somelink.com/apply_url']")

如果您正在解析Atom提要,请不要忘记名称空间。

aah no…这不会输出任何内容
atom_doc = Nokogiri::XML(open("http://www.example.com/atom.xml"))
atom_doc.xpath("/xmlns:feed/xmlns:entry/xmlns:link[@rel='tag:somelink.com/apply_url']")