gpt4 book ai didi

python - 如何捕获 503 错误并重试请求

转载 作者:行者123 更新时间:2023-11-28 17:24:18 24 4
gpt4 key购买 nike

我正在使用 grequests 进行大约 10,000 次调用,但其中一些调用返回 503。如果我不一次对所有 10,000 个调用进行排队,这个问题就会消失。将它分成 1000 组似乎可以解决问题。但是我想知道是否有办法捕获此 503 错误并重试 request

这就是我调用和组合线程的方式:

import grequests
rs = (grequests.get(u, headers=header) for u in urls)
response = grequests.map(rs)

我知道这真的很模糊,但我什至不知道使用 grequests 是否可行。

我试过了

import grequests
rs = (grequests.get(u, headers=header) for u in urls)
time.sleep(1)
response = grequests.map(rs)

但这并不能减慢它的速度。

最佳答案

也许您可以尝试使用事件 Hook 来捕获错误并重新启动请求 http://docs.python-requests.org/en/master/user/advanced/#event-hooks

 import grequests

def response_handler(response):
if response.status_code == '503':
print('error.503')

rs = (grequests.get(u, headers=header, hooks = dict('response' : response_handler)) for u in urls)
response = grequests.map(rs)`

关于python - 如何捕获 503 错误并重试请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40009167/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com