Förbereda pip:s SOCKS-beroende offline
Överför ett PySocks-wheel från en ansluten maskin så att tolken på målet kan börja använda sin SOCKS-proxy.
pip:s SOCKS-stöd kräver att det valfria SOCKS-beroendet är tillgängligt för den Python-tolk som kör pip. Om den tolken bara når paketindexet via SOCKS, hämta beroendet först på en annan ansluten maskin.
På den anslutna maskinen förbereder du en liten wheel-katalog:
python -m pip download --only-binary=:all: --dest wheelhouse PySocks
Överför katalogen till målmasinen och använd sedan dess avsedda tolk för den lokala installationen:
python -m pip install --no-index --find-links wheelhouse PySocks
--no-index håller detta förberedelsesteg på de medföljande filerna. Det försöker inte lösa det ursprungliga anslutningsproblemet med ännu en indexbegäran.
När beroendet är tillgängligt kan SOCKS-vägen väljas för själva paketåtgärden:
python -m pip install --proxy socks5h://proxy.example.net:1080 package_name
För tillåtna offentliga paketnedladdningar utan proxyautentisering ersätter du slutpunkten med en kandidat från SOCKS5-proxylistan och väljer det avsedda paketet. Stavningen socks5h begär uppslagning av destinationsnamnet genom proxyn; socks5 väljer lokal destinationsuppslagning i denna klientväg.
Håll förberedelseinstallationen och paketåtgärden på samma tolk och i samma miljö. Att installera PySocks i en annan Python lämnar mål-pip:ens importer oförändrade. Den användbara kontrollen är vilket python -m pip-kommando som utför arbetet, inte om en annan terminal rapporterar att PySocks är installerat.