繁体   English   中英

{'message': 'Too Many Requests', 'error': 429} 错误

[英]{'message': 'Too Many Requests', 'error': 429} error

我正在尝试使用 python 中的请求模块请求 reddit“api”。 但我得到了这样的回应:

{'message': 'Too Many Requests', 'error': 429}

这是我的代码:

def main():
  import requests

  api = requests.get('https://www.reddit.com/r/memes.json')
  data = api.content
  print(data)

if __name__ == "__main__":
  main()

您遇到了429 Too Many Requests ,当用户在给定的时间内发送过多的请求时经常会遇到这种情况(“速率限制”)。 对于此类错误代码Retry-After header可能包含在响应中,指示在发出新请求之前要等待多长时间。 所以你可以实现这样的睡眠逻辑。

>>> time.sleep(response.headers.get('Retry-After', <default>))

user-agent添加到您的请求中

import requests
headers = {
    'user-agent': 'Mozilla/5.0 (Macintosh; PPC Mac OS X 10_8_7 rv:5.0; en-US) AppleWebKit/533.31.5 (KHTML, like Gecko) Version/4.0 Safari/533.31.5',
}

api = requests.get('https://www.reddit.com/r/memes.json',headers=headers)
print(api.content)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM