如何使用python从json响应中提取属性

2024-04-20 06:40:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是face++API,我需要从第一个请求(json_resp)获取一个属性,以便将其添加到第二个请求(json_resp2)中

import requests

json_resp = requests.post( 'https://api-          us.faceplusplus.com/facepp/v3/detect',
          data  = { 'api_key' : 'api key' ,
          'api_secret' : 'api secret',
           'image_url'     : 'http://www.pick-health.com/wp-content/uploads/2013/08/happy-person.jpg' } )

print("Response : ", json_resp.text)

此请求输出:

Response : {"image_id": "0UqxdZ6b58TaAFxBiujyMA==", "request_id": "1523139597,9f47c376-481b-446f-9fa3-fb49e404437c", "time_used": 327, "faces": [{"face_rectangle": {"width": 126, "top": 130, "left": 261, "height": 126}, "face_token": "2da210ada488fb10b58cdd2cd9eb3801"}]}

我需要访问face_令牌以将其传递给第二个请求:

^{pr2}$

请问我该怎么做?在


Tags: keyimagecomapiidjsonsecret属性
1条回答
网友
1楼 · 发布于 2024-04-20 06:40:35

要从响应对象获取文本字符串,可以使用json_resp.text。然后可以使用json库将其转换为dict,然后提取所需的字段:

json_resp = requests.post(...) ## Your post request, as written above

node = json.loads(json_resp.text)
face_token = node['faces'][0]['face_token']

以下是完整代码(使用上面的代码片段):

^{pr2}$

PS:在网上发布API密钥是个坏主意,因为人们可以通过使用你的服务来增加你的账单。在

相关问题 更多 >