从嵌套的json

时间:2015-08-29 18:05:34

标签: ruby-on-rails json nested

以下是Jason url

如果你的chrome中有一个xml,那就把它放在IRB里面

@results = JSON.parse(open("http://api.arbetsformedlingen.se/af/v0/platsannonser/soklista/lan/", "Accept" => "application/json", "Accept-Language" => "sv").read)

现在我想知道如何从

中提取嵌套值
["platsannons"]["arbetsplats"]["kontaktpersonlista"]["kontaktpersondata"] 

我需要获取名称([“namn”]),以便显示此

Carl Mårtensson 

我该怎么做我已经尝试过.each了,但这只是显示它像这样

Carl Mårtensson [{"namn"=>"Carl Mårtensson", "telefonnummer"=>""}]

我知道我可以使用gsub,但这不是很好的做法:)

修改

这是文档,在第21页到第23页,您将看到我正在谈论的Json结构。 Documentation

由于

1 个答案:

答案 0 :(得分:0)

首先,该URL不是JSON,而是XML。正如亚瑟所说,你可以使用Nokogiri来获取你想要的数据。让我们假设您已将该XML文档读入名为xml_string的字符串变量中。然后你可以这样做:

require 'nokogiri'
doc = Nokogiri::XML(xml_string)
namn = doc.att('arbetsplats kontaktpersonlista kontaktpersondata namn').text

namn现在将包含值Carl Mårtensson