Saknade SOCKS-beroenden i Requests eller HTTPX
Installera rätt SOCKS-tillägg och kontrollera att skriptet använder Python-miljön där det är installerat.
Ett saknat SOCKS-beroende är ett lokalt Python-installationsproblem. Requests och HTTPX använder olika valfria paket, så installera tillägget för klienten som skriptet importerar.
Requests
uv add 'requests[socks]'
uv run python -c 'import requests, socks; print(requests.__version__)'
Requests använder PySocks. Med beroendet installerat delegerar en proxy-URL med socks5h:// målets DNS till SOCKS-proxyn. Ändpunkten måste själv erbjuda en SOCKS-tjänst.
HTTPX
uv add 'httpx[socks]'
uv run python -c 'import httpx, socksio; print(httpx.__version__)'
HTTPX använder socksio; installation av requests[socks] tillhandahåller inte HTTPX-tillägget.
Redan installerat?
Terminal, IDE, notebookkärna och schemalagt jobb kan använda olika Python-miljöer. Kontrollera tolken som kör det felande skriptet:
uv run python -c 'import sys; print(sys.executable)'
Kör importkontrollen i samma miljö. När den lyckas, försök begäran igen med begränsad tidsgräns; senare fel i autentisering, anslutning eller SOCKS-svar gäller själva anslutningen. Behöver du offentliga ändpunkter för nästa test, bläddra i listan över SOCKS5-proxyer och behåll klienten i motsvarande SOCKS-läge.