Ruby 如何获取Nokogiri中的下一个HTML元素?

Ruby 如何获取Nokogiri中的下一个HTML元素?,ruby,nokogiri,Ruby,Nokogiri,假设我的HTML文档如下所示: <div class="headline">News</div> <p>Some interesting news here</p> <div class="headline">Sports</div> <p>Baseball is fun!</p> 但是如何访问以下p标签中的内容,以便新闻与此处的一些有趣新闻等相关?您想要: 还有item.next,但它也将返回文本

假设我的HTML文档如下所示:

<div class="headline">News</div>
<p>Some interesting news here</p>
<div class="headline">Sports</div>
<p>Baseball is fun!</p>
但是如何访问以下
p
标签中的内容,以便
新闻
此处的一些有趣新闻
等相关?

您想要:


还有
item.next
,但它也将返回文本节点,其中
item.next\u元素
将只返回元素节点(如
p
)。

当我使用
next\u元素
编辑时,我得到一个
nil
对象。它看起来像
“headline”div
span
中。我将更新完成此任务的XML示例。我必须执行
item.parent.next\u元素
,因为标题div位于span标记内。谢谢您可能需要验证该HTML。如果我记得正确的div不应该在span标记中,“item.next…还将返回文本节点”对我非常有用,谢谢。从文件上看,这是非常不清楚的。
require 'rubygems'
require 'nokogiri'
require 'open-uri'

url = "mypage.html"
doc = Nokogiri::HTML(open(url))

doc.css(".headline").each do |item|  
  puts item.text
end 
doc.css(".headline").each do |item|
  puts item.text
  puts item.next_element.text
end