-3

我正在使用 JSON 来解析字符串。给定艺术家姓名,我使用 echonest API 打印该艺术家的五首歌曲:

require 'net/http'
require 'rubygems'
require 'json'

puts "Enter an artists name:"
artist_name = gets.chomp


file =open(parsed)

url = URI.parse("http://developer.echonest.com/api/v4/artist/songs?    api_key=RYOXFCWIBV9IM0XCU&name=#{artist_name}&format=json&start=0&results=5")
res = Net::HTTP.get_response(url)

#puts res.body

parsed = JSON.parse(res.body)


parsed{'songs'}.each do |song| 
puts song{'title'} 
end
4

2 回答 2

3

取出线file = open(parsed)。无论如何,它有什么用?

同样,在 Ruby 中,哈希是用 访问的[key],而不是{key}像 Perl 这样的其他语言。

parsed['response']['songs'].each do |song| puts song['title'] end
于 2013-06-08T03:32:57.730 回答
1

您不需要打开已经解析的 JSON,只需对其进行迭代。也替换{[

parsed["response"]["songs"].each do |song|
    p song["title"]
end
于 2013-06-08T03:34:04.523 回答