我想检索http://money.rediff.com/companies/L-T-Finance-Holdings-Ltd/17027392中可用图表的工具提示值。我试过以下代码。
test=browser.div(:id,"div_bse_graph").div(:id,"bseChart").elements(:css=>"canvas")
test.each do |p|
p.hover
puts browser.div(:id,"div_bse_graph").div(:id,"bseChart").div(:class,"jqplot-highlighter-tooltip").text
end
输出: 11:56,70.80 11:56,70.80 11:56,70.80 11:56,70.80 11:56,70.80 11:56,70.80 11:56,70.80
请帮我了解如何检索所有工具提示值。
答案 0 :(得分:1)
数据被记录下来,因此您的概念将无法按预期工作。我花了一会儿找到电话,但这就是你要找的东西
http://money.rediff.com/money1/chart_1day_new.php?companyCode=17027392&all=1
将公司代码替换为您想要的任何一个并解析XML。 e.g。
require 'open-uri'
require 'nokogiri'
doc = Nokogiri::XML(open('http://money.rediff.com/money1/chart_1day_new.php?companyCode=17027392&all=1')
doc.xpath("//graph/set").map{|element| [element.attributes["name"].value,element.attributes["value"].value]}
#=>[["09:15", "71.90"], ["09:16", "71.35"], ["09:17", "71.35"], ["09:18", "71.45"],
["09:19", "71.45"], ["09:20", "71.50"], ["09:21", "71.60"], ["09:22", "71.50"],....]
我截断了响应因为它很长但是这会给你一个二维数组,其中所有这些点在图中表示为[时间,值]