Une dépendance SOCKS manquante est un problème local d’installation Python. Requests et HTTPX utilisent des paquets optionnels différents ; installez donc l’option correspondant au client importé par votre script.

Requests

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

Requests utilise PySocks. Une fois cette dépendance installée, une URL de proxy socks5h:// délègue le DNS de destination au proxy SOCKS. Le point de connexion doit lui-même fournir un service SOCKS.

HTTPX

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

HTTPX utilise socksio ; installer requests[socks] ne fournit pas l’option de HTTPX.

Déjà installé ?

Un terminal, un IDE, un noyau de notebook et une tâche planifiée peuvent utiliser des environnements Python différents. Vérifiez l’interpréteur qui exécute le script en échec :

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

Exécutez le contrôle d’importation dans ce même environnement. Une fois qu’il réussit, réessayez la requête avec un délai limité ; toute erreur ultérieure d’authentification, de connexion ou de réponse SOCKS concerne la connexion elle-même. Si vous avez besoin de points publics pour ce test suivant, consultez la liste de proxys SOCKS5 et gardez le client dans le mode SOCKS correspondant.

Articles similaires