En manglende SOCKS-avhengighet er et lokalt Python-installasjonsproblem. Requests og HTTPX bruker forskjellige valgfrie pakker, så installer tillegget for klienten skriptet importerer.

Requests

uv add 'requests[socks]'
uv run python -c 'import requests, socks; print(requests.__version__)'

Requests bruker PySocks. Med avhengigheten installert delegerer en proxy-URL med socks5h:// målets DNS til SOCKS-proxyen. Endepunktet må selv tilby en SOCKS-tjeneste.

HTTPX

uv add 'httpx[socks]'
uv run python -c 'import httpx, socksio; print(httpx.__version__)'

HTTPX bruker socksio; installasjon av requests[socks] gir ikke HTTPX-tillegget.

Allerede installert?

Terminal, IDE, notebookkjerne og planlagt jobb kan bruke forskjellige Python-miljøer. Kontroller tolken som kjører skriptet som feiler:

uv run python -c 'import sys; print(sys.executable)'

Kjør importkontrollen i samme miljø. Når den lykkes, prøv forespørselen igjen med begrenset tidsavbrudd; senere feil i autentisering, tilkobling eller SOCKS-svar gjelder selve forbindelsen. Trenger du offentlige endepunkter til neste test, se listen over SOCKS5-proxyer og hold klienten i tilsvarende SOCKS-modus.

Relaterte artikler