最近写爬虫发现了一个非常方便的工具retrying,这个库的主要功能是对同一代码段进行多次尝试,常用于爬虫,如下为示例:
from retrying import retry
import requests
@retry(stop_max_attempt_number=10)
def _get(url):
resp = requests.get(url, timeout=3)
assert resp.status_code == 200
return resp
retry是一个装饰器,含有一个stop_max_attempt_number参数,代表最大尝试次数,经过retry装饰器装饰后,_get函数抛出十次错误后,才会向上抛出错误,这个库对于IO操作非常方便。
网友评论