【发布时间】:2012-04-21 21:43:59
【问题描述】:
我正在使用 Ruby 和 Nokogiri 来解析 HTML 文档,我想选择与 CSS 类匹配的所有节点,我事先并不知道,但有 display: none 样式属性。
示例:
<html>
<body>
<p class="visibleTopics">Visible Topic Content</p>
<p class="invisibleTopics">Invisible Topic Content</p>
</body
</html>
并在其他文件中定义:
.invisibleTopic {
display: none
}
我想按其样式display: none 选择具有invisibleTopics 内容的节点。有什么建议吗?
【问题讨论】:
-
Nokogiri 不会看到它们,除非您可以在页面中调整节点后捕获 HTML。在这种情况下,请查看 WATIR 项目和 gem。
-
不错的项目,但不幸的是,我不知道如何将它与 nokogiri 集成。感谢您的提示:-)
-
您通过提取由 WATIR 控制的浏览器呈现的 HTML 并告诉 Nokogiri 解析该内容来集成它。此时您将拥有最终的 HTML,就像您使用浏览器查看页面一样。
-
为什么不抓取所有主题,无论是否可见?