1
0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2025-09-03 00:25:08 +00:00

[networking] Ignore invalid proxies in env (#7704)

Authored by: coletdjnz
This commit is contained in:
coletdjnz
2023-07-28 02:56:02 +12:00
committed by GitHub
parent dae349da97
commit bbeacff7fc
3 changed files with 19 additions and 7 deletions

View File

@ -262,9 +262,13 @@ class RequestHandler(abc.ABC):
# Skip proxy scheme checks
continue
# Scheme-less proxies are not supported
if urllib.request._parse_proxy(proxy_url)[0] is None:
raise UnsupportedRequest(f'Proxy "{proxy_url}" missing scheme')
try:
if urllib.request._parse_proxy(proxy_url)[0] is None:
# Scheme-less proxies are not supported
raise UnsupportedRequest(f'Proxy "{proxy_url}" missing scheme')
except ValueError as e:
# parse_proxy may raise on some invalid proxy urls such as "/a/b/c"
raise UnsupportedRequest(f'Invalid proxy url "{proxy_url}": {e}')
scheme = urllib.parse.urlparse(proxy_url).scheme.lower()
if scheme not in self._SUPPORTED_PROXY_SCHEMES: