我有一个我用Nokogiri解析的页面,但我需要从注释标签中获取文本。 HTML如下:
<div class="parent">
<div class="child">
<span class="visible"> hello </span>
<!-- <span class="commented"> hi </span> -->
</div>
</div>
假设我将该页面设为Nokogiri page
对象,这就是我尝试过但它给了我0
:
page.xpath("//div[@class='parent']/div[@class='child']/comment()").each {|comment| comment.text }
仅限跑步:
page.xpath("//div[@class='parent']/div[@class='child']/comment()")
给出:
[#<Nokogiri::XML::Comment:0x3fe466d8d634 " <span class=\"commented\">hi </span> ">]
我没有尝试如何获取hi
文字。
答案 0 :(得分:4)
我不是Nokogiri专家,但这样的事情似乎有效
comment_node = Nokogiri::HTML(page.at("//div[@class='parent']/div[@class='child']/comment()").text)
comment_node.text.strip
=> "hi"