私は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)
しかし、これはそれを遅くするものではありません。