pip sin SOCKS-støtte krever at den valgfrie SOCKS-avhengigheten er tilgjengelig for Python-tolken som kjører pip. Hvis den tolken bare når pakkeindeksen via SOCKS, hent avhengigheten først på en annen tilkoblet maskin.

På den tilkoblede maskinen forbereder du en liten wheel-mappe:

python -m pip download --only-binary=:all: --dest wheelhouse PySocks

Overfør mappen til mål-maskinen, og bruk deretter dens tiltenkte tolk for den lokale installasjonen:

python -m pip install --no-index --find-links wheelhouse PySocks

--no-index holder dette forberedelsestrinnet på filene som er levert. Det forsøker ikke å løse det opprinnelige tilkoblingsproblemet med enda en indeksforespørsel.

Når avhengigheten er tilgjengelig, kan SOCKS-ruten velges for selve pakkeoperasjonen:

python -m pip install --proxy socks5h://proxy.example.net:1080 package_name

For tillatte offentlige pakkenedlastinger uten proxy-autentisering erstatter du endepunktet med en kandidat fra SOCKS5-proxy-listen og velger den tiltenkte pakken. Skrivemåten socks5h ber om oppslag av destinasjonsnavnet gjennom proxyen; socks5 velger lokal destinasjonsoppslag i denne klientveien.

Hold forberedelsesinstallasjonen og pakkeoperasjonen på samme tolk og i samme miljø. Å installere PySocks i en annen Python lar importene til mål-pip være uendret. Den nyttige kontrollen er hvilken python -m pip-kommando som gjør jobben, ikke om en annen terminal rapporterer at PySocks er installert.

Relaterte artikler