获取文本时,仅nokogiri特定的HTML结构



我一直在与nokogiri库斗争,以便从web获取(刮取)内容,我未能理解如何只获得没有嵌套标签的文本。下面是我解析的

<div class="line1">text I need
<br><div class="podp_k">group:</div><a class="GR" title="go to this group" href="#" rel="?sectID=2">group 1</a>
<br>
<div class="podp_k">brand:</div><a class="BR" title="go to brand" href="#" rel="?sectID=0&amp;brand=16">China&nbsp;&nbsp;CHINA</a>
</div>

我是这样刮的

tagcloud_elements = nokogiri_object.css("div#products_tbody > table > tbody > tr > td > div.line1 > text()")
f.puts tagcloud_element.text.gsub(/^s+/,'')

末尾的gsub几乎完全符合我的需要,但我在后面留下了一些空白。有没有人能从上面的例子中提出最好的方法来获得"我需要的文本"?

如果您不再使用该文档,我会删除此部分中的其他节点。

nokogiri_object.css("div.line1 *").each(&:remove)
nokogiri_object.at_css("div.line1").text.strip # => "text I need"

相关内容

  • 没有找到相关文章

最新更新