Eine fehlende SOCKS-Abhängigkeit ist ein lokales Python-Installationsproblem. Requests und HTTPX verwenden verschiedene optionale Pakete. Installieren Sie deshalb das Extra für den Client, den Ihr Skript importiert.

Requests

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

Requests verwendet PySocks. Mit installierter Abhängigkeit übergibt eine Proxy-URL mit socks5h:// die DNS-Auflösung des Ziels an den SOCKS-Proxy. Der Endpunkt selbst muss einen SOCKS-Dienst bereitstellen.

HTTPX

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

HTTPX verwendet socksio; die Installation von requests[socks] liefert das Extra für HTTPX nicht mit.

Bereits installiert?

Terminal, IDE, Notebook-Kernel und geplanter Auftrag können unterschiedliche Python-Umgebungen nutzen. Prüfen Sie den Interpreter des fehlschlagenden Skripts:

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

Führen Sie die Importprüfung in genau dieser Umgebung aus. Sobald sie gelingt, wiederholen Sie die Anfrage mit begrenzter Wartezeit. Nachfolgende Authentifizierungs-, Verbindungs- oder SOCKS-Antwortfehler betreffen die Verbindung selbst. Benötigen Sie für diesen nächsten Test öffentliche Endpunkte, wählen Sie aus der SOCKS5-Proxy-Liste und lassen den Client im passenden SOCKS-Modus.

Ähnliche Artikel