fix(proxy): skip URLs without scheme in load_proxy_tiers()
Validates each URL in PROXY_URLS_DATACENTER / PROXY_URLS_RESIDENTIAL: logs a warning and skips any entry missing an http:// or https:// scheme instead of passing malformed URLs that cause SSL or connection errors. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -88,8 +88,14 @@ def load_proxy_tiers() -> list[list[str]]:
|
|||||||
for var in ("PROXY_URLS_DATACENTER", "PROXY_URLS_RESIDENTIAL"):
|
for var in ("PROXY_URLS_DATACENTER", "PROXY_URLS_RESIDENTIAL"):
|
||||||
raw = os.environ.get(var, "")
|
raw = os.environ.get(var, "")
|
||||||
urls = [u.strip() for u in raw.split(",") if u.strip()]
|
urls = [u.strip() for u in raw.split(",") if u.strip()]
|
||||||
if urls:
|
valid = []
|
||||||
tiers.append(urls)
|
for url in urls:
|
||||||
|
if not url.startswith(("http://", "https://")):
|
||||||
|
logger.warning("%s contains URL without scheme, skipping: %s", var, url[:60])
|
||||||
|
continue
|
||||||
|
valid.append(url)
|
||||||
|
if valid:
|
||||||
|
tiers.append(valid)
|
||||||
|
|
||||||
return tiers
|
return tiers
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user