我想在这个JSON响应中抓取图像'src',但是我的尝试让我处于松散状态。任何帮助都会很棒。
我的模特
def test
response = self.class.get("URLFORRESPONSE")
@elements = response.parsed_response["extractorData"]
@parsed = @elements.collect { |e| e['src'] }
end
JSON响应
{
"extractorData" : {
"url" : "http://testwebsite.com/",
"resourceId" : "409417ee21618b70d74b03231a793c2d7",
"data" : [ {
"group" : [ {
"image" : [ {
"src" : "test0.jpg"
} ]
}, {
"image" : [ {
"src" : "test1.jpg"
} ]
}, {
"image" : [ {
"src" : "test2.jpg"
} ]
}, {
"image" : [ {
"src" : "test3.jpg"
} ]
}, {
"image" : [ {
"src" : "test4.jpg"
} ]
}
答案 0 :(得分:0)
我知道这很丑,但我希望这种消化有所帮助。 由于HTTParty.parsed_response返回一个哈希并假设你正在使用ruby 2.3,你可以这样做:
console.assert
看到它:
@elements = response.parsed_response["extractorData"]
@elements.dig('data').collect{|h| h.dig('group').collect{|h| h.dig('image').collect{|h| h.dig('src')}}}