我正在尝试使用nokogiri和fetch href属性值循环遍历表。
我的代码如下所示:
require 'nokogiri'
require 'open-uri'
def company_bod(abbrv)
doc=Nokogiri::HTML(open("http://in.reuters.com/finance/stocks/companyOfficers?symbol=#{abbrv}"))
data = doc.css('.column1 tbody.dataSmall').first if doc.css('.column1')
data.css('tr').each do |col|
puts col.xpath('//td/h2/a/@href').text()
#puts col.css('td[2]').text()
#puts col.css('td[3]').text()
#puts col.css('td[4]').text()
end
company_bod("GOOGL.O")
但是这会在http://in.reuters.com/finance/stocks/companyOfficers?symbol=GOOGL.O上的所有表格中返回一组网址,而我需要它只在表格中循环,该表格位于摘要选取href属性值之下。
我在这里做错了什么?
答案 0 :(得分:0)
您需要将xpath查询锚定在元素
上node.xpath("//example")
进行全局搜索node.xpath(".//example")
执行从当前节点开始的本地搜索注意前导点.
,它将查询锚定在当前节点上。否则,即使您从当前节点调用查询,也会针对根节点运行查询。