Ruby 哈希:无法将字符串转换为整数



我是Ruby新手,我在使用哈希时遇到了一些问题。

我有从YouTube API返回的XML,我将其转换为散列。下面是hash .from_xml()返回的哈希值:http://pastebin.com/9xxE6iXU

我试图从每个结果的哈希中抓取特定元素,例如标题,链接,作者等。每当我尝试遍历散列或获取特定元素时,我都会收到"can't convert String into Integer"错误。

下面是我用于循环的代码:

@data["feed"]["entry"]["title"].each do  |key, value|
    "<p>"+key+" "+value+"</p>"
end

我也试过抓取特定的元素,比如@data["feed"]["entry"]["title"][0]。

如何循环遍历哈希并获取特定的元素?

这是因为@data["feed"]["entry"]是哈希数组:

puts @data["feed"]["entry"].class  # => Array

数组中的每个元素哈希值都有"id"、"category"、"title"等值。

对于抓取每个标题,尝试使用以下代码片段:

@data["feed"]["entry"].each do |entry|
  puts entry["title"]
end
# => "TABE test adult basic education"
     "WhatCollegesHopeYouWon'tFindOutAboutACTSATTestPrep..."
     ....

相关内容

  • 没有找到相关文章

最新更新