mirror of
https://github.com/simon987/hexlib.git
synced 2025-04-10 14:06:43 +00:00
Add retry_sleep to retry
This commit is contained in:
parent
53ac0c37e8
commit
6e1aa53455
@ -4,12 +4,14 @@ import time
|
||||
from threading import Lock
|
||||
|
||||
import atexit
|
||||
from time import sleep
|
||||
|
||||
import siphash
|
||||
|
||||
last_time_called = dict()
|
||||
|
||||
|
||||
def retry(attempts, callback=None):
|
||||
def retry(attempts, callback=None, retry_sleep=0):
|
||||
def decorate(func):
|
||||
def wrapper(*args, **kwargs):
|
||||
retries = attempts
|
||||
@ -20,6 +22,7 @@ def retry(attempts, callback=None):
|
||||
if callback:
|
||||
callback(e)
|
||||
retries -= 1
|
||||
sleep(retry_sleep)
|
||||
return wrapper
|
||||
return decorate
|
||||
|
||||
|
@ -112,7 +112,7 @@ def download_file(url, destination, session=None, headers=None, overwrite=False,
|
||||
|
||||
|
||||
class Web:
|
||||
def __init__(self, proxy=None, rps=1, retries=3, logger=None, cookie_file=None, retry_codes=None, session=None,
|
||||
def __init__(self, proxy=None, rps=1, retries=3, retry_sleep=0, logger=None, cookie_file=None, retry_codes=None, session=None,
|
||||
ua=None):
|
||||
self._cookie_file = cookie_file
|
||||
self._proxy = proxy
|
||||
@ -140,7 +140,7 @@ class Web:
|
||||
}
|
||||
|
||||
@rate_limit(rps)
|
||||
@retry(retries, callback=self._error_callback)
|
||||
@retry(retries, callback=self._error_callback, retry_sleep=retry_sleep)
|
||||
def get(url, **kwargs):
|
||||
self._current_req = "GET", url, kwargs
|
||||
r = self._session.get(url, **kwargs)
|
||||
|
Loading…
x
Reference in New Issue
Block a user