pythonapi怎么用_如何使用python请求进行多个api调用

在Django应用中,开发者遇到使用grequests库并行调用外部API时遇到'NoneType'对象没有'json'属性的错误。问题出现在尝试解析响应对象的JSON内容。解决方案可能涉及检查API的可用性、请求头设置以及处理异步响应的正确方式。确保在调用API后检查响应状态,并在成功时才尝试解析JSON。
摘要由CSDN通过智能技术生成

我尝试使用请求或任何其他允许我这样做的库从django并行调用外部api。在

我已经尝试过使用grequests来进行这个调用,有时它是有效的,但大多数时候我得到的是“NoneType”对象在客户端没有属性“json”错误。

这是我的密码

在视图.py在def get_fixtures(request, league_id):

league_id = league_id

urls = [

"https://api-football-v1.p.rapidapi.com/v2/fixtures/league/%d" % league_id,

"https://api-football-v1.p.rapidapi.com/v2/leagues/league/%d" % league_id

]

headers = {'X-RapidAPI-Host': "api-football-v1.p.rapidapi.com", 'X-RapidAPI-Key': X_RapidAPI_Key}

resp = (grequests.get(u, headers=headers) for u in urls)

responses = grequests.map(resp)

a = responses[0].json()

b = responses[1].json()

fix_1 = a['api']['fixtures']

api_2 = b['api']['leagues']

context = {

'fix_1': fix_1,

'api_2': api_2,

}

return render(request, "pages/fixtures.html", context)

在服务器端,我得到以下错误:

^{pr2}$

我可以使用请求或任何其他库来执行调用而不会出现这些错误吗?如果是,我如何在工作中实施?在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值