Липсващата SOCKS зависимост е проблем на локалната инсталация на Python. Requests и HTTPX използват различни незадължителни пакети, затова инсталирайте допълнението за клиента, който скриптът импортира.

Requests

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

Requests използва PySocks. След инсталиране на тази зависимост прокси URL socks5h:// делегира DNS на целта на SOCKS проксито. Самата крайна точка трябва да предоставя SOCKS услуга.

HTTPX

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

HTTPX използва socksio; инсталирането на requests[socks] не осигурява допълнението на HTTPX.

Вече е инсталирано?

Терминал, IDE, ядро на notebook и планирана задача може да използват различни Python среди. Проверете интерпретатора, изпълняващ неуспешния скрипт:

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

Пуснете проверката за импорт в същата среда. Когато успее, повторете заявката с ограничено време; следващи грешки при удостоверяване, свързване или SOCKS отговор засягат самата връзка. Ако за следващия тест ви трябват публични точки, разгледайте списъка със SOCKS5 проксита и оставете клиента в съответния SOCKS режим.

Подобни статии