FF Xpather to Nokogiri——我可以复制粘贴吗?



我手动这样做,然后我卡住了,我不知道为什么它不工作。我下载了xpather,它给了我:/html/body/center/table/tbody/tr[3]/td/table作为我想要的项目的路径。我已经手动确认这是正确的,但是当我将它粘贴到我的代码中时,它所做的只是返回nil

下面是我的代码:
a = parentdoc.at_xpath("//html/body/center/table/tbody/tr[3]/td/table[1]")
puts a

如果我这样做:

a = parentdoc.at_xpath("//html/body/center")
puts a

我从页面上得到一大块文本。我可以继续添加元素,直到我击中它然后它又返回nil。我甚至尝试了这样的东西://html/body/center/table/*/tr[3],它做了同样的事情返回nil

我错过了什么?

您的问题是Firefox正在插入HTML中不存在的<tbody>元素。当您使用xpather时,它从浏览器正在使用的HTML中工作(而不是ycombinator.com返回的原始HTML),并找到以下路径:

//html/body/center/table/tbody/tr[3]/td/table

Nokogiri将处理原始HTML,所以你想要这个

//html/body/center/table/tr[3]/td/table

当我将XPath应用到你评论中的URL时:

doc.at_xpath('//html/body/center/table/tr[3]/td/table').text

我得到这样的输出:

"csoghoian 1 hour ago  | link | parent2 responses:1. Chrome is the only major browser not to ...

相关内容

  • 没有找到相关文章

最新更新