如何将API请求结果存储在变量中以避免重新运行请求?

时间:2017-10-31 20:43:04

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

我找到了this question,但问题似乎仍然存在。 我跑的时候

result = requests.get("https://api.etc.com/v1/something", params=payload).json()

然后运行

print(type(result))
print(type(result['data'][0]))

我得到的类型'dict'和'string'(或类似的东西)正如你所期望的那样。

然而,我在控制台的最后一行的API中收到“超出速率限制”错误。如果我们确实将结果存储在result中,为什么似乎会从该行生成API请求?

目的是将API请求结果存储在变量中,然后自由地探测其内容,而不会触发进一步的请求。我怎么做?还有别的事吗?当对请求率限制抱怨时,控制台专门指向该行。

有时错误是由其他行触发的。例如,控制台的最新输出是

> {'message': 'rate_limit_exceeded', 'status': 'error'}
Traceback (most recent call last):
  File "/Users/User/folder/code.py", line 85, in <module>
    derivative_resuslt = result['data'][0]
KeyError: 'data'

0 个答案:

没有答案