diff --git a/data/fetch/http.py b/data/fetch/http.py index c06f5c9..f269799 100644 --- a/data/fetch/http.py +++ b/data/fetch/http.py @@ -9,28 +9,29 @@ session = requests.Session() logger = logging.getLogger('fetch.http') -class LoggingAdapter(requests.adapters.HTTPAdapter): +class RetryAdapter(requests.adapters.HTTPAdapter): """ - Adapteur de requêtes vérifiant le nombre d’accès réalisés par seconde. + Adapteur de requêtes réessayant les requêtes échouées avec + un délai adaptatif. """ def __init__(self): # Réessaie jusqu’à dix fois la récupération de chaque page, en # augmentant progressivement le délai entre chaque essai retry = urllib3.util.Retry(total=10, backoff_factor=0.3) - super(LoggingAdapter, self).__init__(max_retries=retry) + super(RetryAdapter, self).__init__(max_retries=retry) def send( self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None ): logger.debug('{} {}'.format(request.method, request.url)) - return super(LoggingAdapter, self).send( + return super(RetryAdapter, self).send( request, stream=stream, timeout=timeout, verify=verify, cert=cert, proxies=proxies ) -adapter = LoggingAdapter() +adapter = RetryAdapter() session.mount('http://', adapter) session.mount('https://', adapter)