【问题标题】:Can't fetch data from python request response无法从 python 请求响应中获取数据
【发布时间】:2021-07-29 19:35:26
【问题描述】:

我是 Python 新手,我正在使用“请求”在 api 端点中发送发布请求 我得到的回应是这样的:

{"success":true,"data":4503615,"message":"Thanks","lid":""}

我的代码是这样的:

    import requests

para1 = {'username': 'xxxx' ,'password': 'xxx'} 
req1 = requests.post('https://testpy.com/login', data = para1)
print(req1) 

我得到的响应类似于字典类型,除了 "success":true,我只希望 "data":4503615 数字在一个新变量中。我试图像这样获取它

import requests

    para1 = {'username': 'xxxx' ,'password': 'xxx'} 
    req1 = requests.post('https://testpy.com/login', data = para1)
    qq = req1.text
    cc = qq["data"]
    print(cc)

但它没有显示号码,有什么办法可以得到那个号码? 谢谢

【问题讨论】:

  • 只要请求返回一个有效的json结构,就可以cc=req1.json()['data']
  • 非常感谢@Stephen 成功了

标签: python python-3.x dictionary python-requests


【解决方案1】:

使用req1.json() 而不是req1.text,它将响应文本解析为您可以按照上述方式使用的字典。

所以替换

qq = req1.text

qq = req1.json()

【讨论】:

    猜你喜欢
    • 2021-02-07
    • 1970-01-01
    • 1970-01-01
    • 2021-05-12
    • 2016-08-07
    • 2021-08-14
    • 1970-01-01
    相关资源
    最近更新 更多