在Nokogiri中使用XPath选择元素属性值

时间:2014-06-28 11:20:53

标签: ruby xpath nokogiri

所以,如果我有这段代码

<body>
  <div class="red">
    <a href="http://www.example.com>Example</a>
  </div>
</body>

我知道我想获得一个属性为“class”且值为“red”的元素,但我不知道它位于何处。

如果我使用XPath,这段代码是对的吗?

dir = "http://www.domain.com"
doc = Nokogiri::HTML(open(url))
doc.xpath('.//*[class="red"]')

我只是在学习,所以我不知道这是否有任何错误。我不能让它发挥作用。感谢。

编辑:现在它正在工作=)

doc.xpath('//*[@class="red"]')

1 个答案:

答案 0 :(得分:10)

将类更改为@class。在开头删除点。然后它会工作。