Compare commits

...

3 Commits

Author SHA1 Message Date
7ecd55a1c6 Add cookiejar_filter_name 2021-10-03 11:02:39 -04:00
b746a91281 Fix default value for retry codes 2021-10-03 10:43:19 -04:00
333083e8b9 Add 520 in default retry codes 2021-10-03 10:33:49 -04:00
3 changed files with 13 additions and 3 deletions

View File

@ -37,13 +37,15 @@ def redis_publish(rdb, item, item_project, item_type, item_subproject=None, item
def get_web(session=None): def get_web(session=None):
ua = UserAgent() ua = UserAgent()
retry_codes = os.environ.get("RETRY_CODES", "")
web = Web( web = Web(
session=session, session=session,
proxy=os.environ.get("PROXY", None), proxy=os.environ.get("PROXY", None),
rps=os.environ.get("RPS", 1), rps=os.environ.get("RPS", 1),
logger=stdout_logger, logger=stdout_logger,
cookie_file=os.environ.get("COOKIE_FILE", None), cookie_file=os.environ.get("COOKIE_FILE", None),
retry_codes=set(int(x) if x else None for x in os.environ.get("RETRY_CODES", "").split(",")), retry_codes=set(int(x) for x in retry_codes) if retry_codes else None,
retries=int(os.environ.get("RETRIES", 3)), retries=int(os.environ.get("RETRIES", 3)),
retry_sleep=int(os.environ.get("RETRY_SLEEP", 0)), retry_sleep=int(os.environ.get("RETRY_SLEEP", 0)),
ua=ua[os.environ.get("USER_AGENT")] if os.environ.get("USER_AGENT", None) is not None else None ua=ua[os.environ.get("USER_AGENT")] if os.environ.get("USER_AGENT", None) is not None else None

View File

@ -81,6 +81,14 @@ def cookiejar_filter(cj, pattern):
return filtered_cj return filtered_cj
def cookiejar_filter_name(cj, pattern):
filtered_cj = RequestsCookieJar()
for c in cj:
if re.match(pattern, c.name):
filtered_cj.set_cookie(c)
return filtered_cj
def url_query_value(url, arg, as_list=False): def url_query_value(url, arg, as_list=False):
qs = urlparse(url).query qs = urlparse(url).query
parsed_qs = parse_qs(qs) parsed_qs = parse_qs(qs)
@ -134,7 +142,7 @@ class Web:
self._logger = logger self._logger = logger
self._current_req = None self._current_req = None
if retry_codes is None or not retry_codes: if retry_codes is None or not retry_codes:
retry_codes = {502, 504, 522, 524, 429} retry_codes = {502, 504, 520, 522, 524, 429}
self._retry_codes = retry_codes self._retry_codes = retry_codes
if session is None: if session is None:

View File

@ -2,7 +2,7 @@ from setuptools import setup
setup( setup(
name="hexlib", name="hexlib",
version="1.59", version="1.62",
description="Misc utility methods", description="Misc utility methods",
author="simon987", author="simon987",
author_email="me@simon987.net", author_email="me@simon987.net",