forked from zaclys/searxng
[mod] searx.network: remove redundant code
searx.client.new_client: the proxies parameter is a dictonnary, and the protocol (key of the dictionnary) is already normalized (see usage of searx.network.network.PROXY_PATTERN_MAPPING)
This commit is contained in:
parent
8e73438cbe
commit
b10403d3a1
|
@ -183,15 +183,6 @@ def get_transport(verify, http2, local_address, proxy_url, limit, retries):
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def iter_proxies(proxies):
|
|
||||||
# https://www.python-httpx.org/compatibility/#proxy-keys
|
|
||||||
if isinstance(proxies, str):
|
|
||||||
yield 'all://', proxies
|
|
||||||
elif isinstance(proxies, dict):
|
|
||||||
for pattern, proxy_url in proxies.items():
|
|
||||||
yield pattern, proxy_url
|
|
||||||
|
|
||||||
|
|
||||||
def new_client(
|
def new_client(
|
||||||
# pylint: disable=too-many-arguments
|
# pylint: disable=too-many-arguments
|
||||||
enable_http, verify, enable_http2,
|
enable_http, verify, enable_http2,
|
||||||
|
@ -204,11 +195,11 @@ def new_client(
|
||||||
)
|
)
|
||||||
# See https://www.python-httpx.org/advanced/#routing
|
# See https://www.python-httpx.org/advanced/#routing
|
||||||
mounts = {}
|
mounts = {}
|
||||||
for pattern, proxy_url in iter_proxies(proxies):
|
for pattern, proxy_url in proxies.items():
|
||||||
if not enable_http and (pattern == 'http' or pattern.startswith('http://')):
|
if not enable_http and pattern.startswith('http://'):
|
||||||
continue
|
continue
|
||||||
if (proxy_url.startswith('socks4://')
|
if (proxy_url.startswith('socks4://')
|
||||||
or proxy_url.startswith('socks5://')
|
or proxy_url.startswith('socks5://')
|
||||||
or proxy_url.startswith('socks5h://')
|
or proxy_url.startswith('socks5h://')
|
||||||
):
|
):
|
||||||
mounts[pattern] = get_transport_for_socks_proxy(
|
mounts[pattern] = get_transport_for_socks_proxy(
|
||||||
|
|
Loading…
Reference in New Issue