Puuttuvat SOCKS-riippuvuudet Requestsissa tai HTTPX:ssä
Asenna oikea SOCKS-lisäosa ja varmista, että skripti käyttää sen asennuksen Python-ympäristöä.
Puuttuva SOCKS-riippuvuus on paikallisen Python-asennuksen ongelma. Requests ja HTTPX käyttävät eri valinnaisia paketteja, joten asenna skriptin tuoman asiakkaan lisäosa.
Requests
uv add 'requests[socks]'
uv run python -c 'import requests, socks; print(requests.__version__)'
Requests käyttää PySocksia. Kun riippuvuus on asennettu, socks5h://-välityspalvelinosoite siirtää kohteen DNS:n SOCKS-välityspalvelimelle. Päätepisteen itsensä on tarjottava SOCKS-palvelua.
HTTPX
uv add 'httpx[socks]'
uv run python -c 'import httpx, socksio; print(httpx.__version__)'
HTTPX käyttää socksio-pakettia; requests[socks]-asennus ei tuo HTTPX:n lisäosaa.
Onko jo asennettu?
Pääte, IDE, notebook-ydin ja ajastettu työ voivat käyttää eri Python-ympäristöjä. Tarkista epäonnistuvan skriptin suorittava tulkki:
uv run python -c 'import sys; print(sys.executable)'
Suorita tuontitesti samassa ympäristössä. Kun se onnistuu, yritä pyyntöä uudelleen rajatulla aikakatkaisulla; myöhemmät todennus-, yhteys- tai SOCKS-vastausvirheet koskevat itse yhteyttä. Jos seuraava testi tarvitsee julkisia päätepisteitä, katso SOCKS5-välityspalvelinluetteloa ja pidä asiakas vastaavassa SOCKS-tilassa.