1

我正在尝试从损益表中提取数据,网址是http://finance.yahoo.com/q/is?s=LMT+Income+Statement&annual

我无法使用 browser.table(:name, 'blah') 或 (:id, 'blah') 找到表,但是使用此代码使用带有 Nokogiri 的 xpath 有一些运气,在我已经初始化所有内容并浏览到页面:

page_html = Nokogiri::HTML.parse(browser.html)
tobj = page_html.xpath('//*[@id="yfncsumtab"]').inner_text

现在我可以获取 tobj 并将数据提取出来,但是尝试将对象作为表格进行操作对我没有任何好处。关于如何将表存储为变量的任何建议都会有所帮助。我可能可以计算出从那里迭代行/列,但我不介意你是否添加了一些可以做到这一点的代码。

4

3 回答 3

1

你知道 Watir 有 xpath 支持吗?

browser.element(:xpath => '//*[@id="yfncsumtab"]')
于 2012-06-25T10:06:07.240 回答
0

这样看:

doc = Nokogiri::HTML.parse(browser.html)
table = doc.at('table#yfncsumtab')

# iterate through tr's
table.search('tr').each do |tr|
  # do something with tr
end
于 2012-06-25T00:41:10.953 回答
0

尝试browser.element(id: "yfncsumtab").text

于 2016-08-04T20:21:12.497 回答