如何从URL获取的JSON文件中读取指定键'OnePie_KEY'的对应值
问题原因
requests.Response对象的json()方法不支持直接传入键名参数取值,该方法仅负责将响应体完整反序列化为Python字典/列表结构,需手动按层级取对应的键值。- 接口返回的最外层JSON结构中,
data字段为JSON格式的字符串,你需要的OnePie_KEY字段存储在这个内嵌的JSON结构内,需要二次反序列化才能读取。
修正后可运行代码
import requests import json # 发送请求获取接口返回内容 response = requests.get(url='http://api.jsoneditoronline.org/v1/docs/abf48114b71a43f380cd114d37a4bb9d') # 解析外层JSON outer_json = response.json() # 解析data字段内嵌的JSON字符串 inner_json = json.loads(outer_json["data"]) # 输出目标字段值 print(inner_json["OnePie_KEY"])
运行说明
- 上述代码执行后会输出目标值:
112233445566778899 - 实际生产使用时可以补充响应状态码校验、字段存在性判断逻辑,避免接口波动、字段变更导致代码报错。
内容的提问来源于stack exchange,提问作者Phúc Thiên Lang
相关产品推荐
相关产品推荐

