Использование Yahoo Finance Gem - PullRequest
2 голосов
/ 27 апреля 2011

Я пытаюсь использовать Yahoo Finance Gem, но не могу получить необходимую информацию. Когда я пытаюсь получить цитату, она создает хеш, но вместо индивидуальной информации (которую я пытаюсь получить) она выдает строку, содержащую всю информацию в ней. Есть ли способ получить один бит информации (например,% change) в виде числа? Я очень новичок в ruby, поэтому любая помощь будет потрясающей.

Ответы [ 2 ]

1 голос
/ 27 апреля 2011
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(), для автоматического анализа данных из значения хеш-функции.

0 голосов
/ 26 сентября 2012

Я использую Rails 3.2.8 вместе с Ruby 1.9.3, и у меня были некоторые проблемы с этим гемом.

Так что я просто пошел прямо к исходному коду и взял этот один файл (его простоодин файл, и короткий тоже) и поместил его в мою папку / lib.Если вы не использовали вашу папку lib, вы должны добавить что-то вроде config.autoload_paths += Dir["#{config.root}/lib/**/"] в config / application.rb, чтобы загрузить классы папок lib из консоли Rail или из других мест в rails.

Кроме того,Это, пожалуй, самый простой исходный код, который вы найдете, и всегда полезно начать читать реальный источник, на который вы полагаетесь каждый день.

...