我正在整理一个从雅虎检索股票报价的红宝石程序。它适用于一个股票,但当我尝试循环我的股票阵列时,我得到以下错误:
nyahoo.rb:20:in `<main>': undefined local variable or method `stock' for main:Object (NameError).
以下是代码,如果对我的错误有任何意见,我将不胜感激。
由于
require 'rubygems'
require 'nokogiri'
require 'open-uri'
symbol = ['ARRS','BCST']
symbol.each do |s|
@page = Nokogiri::HTML(open("http://finance.yahoo.com/q?s=#{s.upcase}&ql=1"))
end
def marketCap(stock)
return @page.xpath("//td[@class='yfnc_tabledata1']")
end
ask = marketCap(stock)[3].text.split('x')
puts ask[0]
答案 0 :(得分:2)
修复需要此部分marketCap(stock)[3].text.split('x')
。传递一些实际值而不是 stock 。