为了账号安全,请及时绑定邮箱和手机立即绑定

从 api dict 响应中获取价值

从 api dict 响应中获取价值

猛跑小猪 2022-06-14 15:15:39
我使用 Bitmex API 的请求,我试图从 get 请求中获取 lastPrice 值。我将响应存储到一个变量中,尝试了几种方法来提取 lastPrice 值,包括 print(value[1]) print(value['lastPrice'],所有这些都不起作用,我已经在这里阅读了一段时间了似乎找不到正确的工作方式来获取价值。抱歉,如果一直被问到这个问题。import requestsr = requests.get('https://www.bitmex.com/api/v1/instrument?symbol=XBT&columns=lastPrice&count=1&reverse=true')value = r.textprint(value)#print(value[1]) #print(value['lastPrice'])这个的输出是[{"symbol":"XBTUSD","timestamp":"2019-10-03T22:37:13.085Z","lastPrice":8190.5}]使用 value[1] 只返回打印中的第一个字母。所以对于 ex [1] 返回 { 并使用 ['lastPrice'] 返回 TypeError: string indices must be integers
查看完整描述

1 回答

?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

您的返回值是 JSON 字符串,您可以使用response.json()它来将其解码为 python dict。结果包含list单个元素,因此您应该参考第一个元素,list然后dict按键获取值:


r = requests.get('https://www.bitmex.com/api/v1/instrument?symbol=XBT&columns=lastPrice&count=1&reverse=true')


value = r.json()

print(value[0]['lastPrice'])


查看完整回答
反对 回复 2022-06-14
  • 1 回答
  • 0 关注
  • 80 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信