从 response.text() 中提取 ID

Extract Id's from response.text()

我想从以下响应(查找)中提取 id 的所有值。

代码:

findings= requests.get('https://api.probely.com/targets/TaargetID/findings/36',headers={"Content-Type": "application/json", "Authorization": "JWT <Token>"})
finding=findings.json()

发现:

{"count":45,
   "page_total":5,
   "page":1,
   "length":10,
   "results":[
      {
         "id":79,
         "target":
             {"id":"RzXFSNHH3qUY","name":"","site": 
                 {"id":"2qk21XKLrKyf","url":"https://test- 
                 0.ox.qa.prbly.win",.....},
          "(...)"
         ,
         "id":12,
         "target":
          "(...)"
         ,
         "id":32,
         "target":
          "(...)"
         ,"(....)"
}
]
}

我想得到一个像这样的 id 数组: id=[79,12,32] 如何提取这些 ID 并将其存储在数组中?

您可以使用迭代遍历“结果”中的每个项目,然后将 ID 保存到数组中。

id_list = []

for result in finding["results"]:
    id_list.append(result["id"])

我还想指出,您不应该调用任何变量 id,因为它是一个内置的 Python 函数,覆盖它可能会产生不良后果。

你可以试试:

ids = list(map(lambda res: res["id"], finding["results"]))

什么类型的“结果”键? “id”字段出现多次