Brak zależności SOCKS to problem lokalnej instalacji Pythona. Requests i HTTPX korzystają z różnych pakietów opcjonalnych, więc zainstaluj dodatek klienta importowanego przez skrypt.

Requests

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

Requests używa PySocks. Po zainstalowaniu tej zależności URL proxy socks5h:// przekazuje DNS celu do proxy SOCKS. Sam punkt musi oferować usługę SOCKS.

HTTPX

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

HTTPX używa socksio; instalacja requests[socks] nie zapewnia dodatku HTTPX.

Już zainstalowane?

Terminal, IDE, jądro notebooka i zadanie zaplanowane mogą używać różnych środowisk Python. Sprawdź interpreter uruchamiający skrypt, który zawodzi:

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

Uruchom kontrolę importów w tym samym środowisku. Gdy się powiedzie, ponów żądanie z ograniczonym czasem oczekiwania; późniejsze błędy uwierzytelniania, połączenia lub odpowiedzi SOCKS dotyczą samego połączenia. Jeśli do kolejnego testu potrzebujesz publicznych punktów, przejrzyj listę proxy SOCKS5 i pozostaw klienta w pasującym trybie SOCKS.

Powiązane artykuły