我正在抓取Yelp数据以收集一些商业信息。我能够在一个区域(?term=Food&Location=Orange+County,CA
)中为给定的搜索词输出大约20个结果。
结果是一个ruby哈希,在我的终端上很好地格式化了。我想知道如何获取结果,并使其成为CSV,以便我可以自动导入到Excel。
到目前为止,这是我的代码,下面的CSV是我正在玩的内容,但它没有做太多;
yelp.rb
require 'rubygems'
require 'oauth'
require 'json'
require 'csv'
consumer_key = 'CONSUMER_KEY'
consumer_secret = 'CONSUMER_SECRET'
token = 'TOKEN'
token_secret = 'TOKEN_SECRET'
api_host = "http://api.yelp.com"
consumer = OAuth::Consumer.new(consumer_key, consumer_secret, {:site => api_host})
access_token = OAuth::AccessToken.new(consumer, token, token_secret)
path = '/v2/search?term=Session+Photography&location=Orange+County,CA'
jresp = JSON.parse(access_token.get(path).body)
jresp['businesses'].each do | business |
if business['is_closed'] == false
printf("%-32s %10s %3d %1.1f\n",
business['name'], business['phone'],
business['review_count'], business['rating'])
end
end
CSV.open('data.csv', 'wb') do |csv|
csv << jresp
jresp.each do |key, value|
csv << value
end
end
任何帮助或推动我朝着正确的方向将非常感激。提前致谢。