我正在尝试使用Yahoo Finance Gem,但无法获得我想要的信息。当我尝试获取引用时,它会创建一个哈希值,但不是单个信息(我试图获取),它会给出一个字符串,其中包含所有信息。有没有办法接收一位信息(例如%变化)作为数字?我对红宝石很新,所以任何帮助都会很棒。
答案 0 :(得分:1)
require 'yahoofinance'
YahooFinance.get_quotes(YahooFinance::StandardQuote, 'yhoo') {|i|
puts i.change
puts i.changePoints
puts i.changePercent
puts i.time
}
给我打印:
-0.03 - -0.17% -0.03 -0.17 10:55am
或
r = yahooFinance.get_quotes(YahooFinance::StandardQuote, 'yhoo')
puts r[r.keys[0]].dayHigh
puts r["YHOO"].dayHigh
打印:
17.43 17.43
YahooFinance.get_quotes
返回一个哈希,其中引号符号是键,每个引号的所有数据都是一个值。请参阅YahooFinance::BaseQuote
类以猜测为什么可以使用dayHigh()
之类的get来自动解析哈希值中的数据。
答案 1 :(得分:0)
我正在运行Rails 3.2.8以及Ruby 1.9.3并且在使用这个gem时遇到了一些问题。
所以我直接进入源代码并获取了一个文件(它只是一个文件,也是短文件)并将其放在我的/ lib文件夹中。如果您没有使用lib文件夹,则必须向config / application.rb添加类似config.autoload_paths += Dir["#{config.root}/lib/**/"]
的内容,以便从rails控制台或rails中的其他位置加载lib文件夹类。
此外,它可能是您将找到的最简单的源代码,并且始终很好地开始阅读您每天依赖的实际来源。