Przygotowanie zależności SOCKS pip w trybie offline
Skopiuj wheel PySocks z połączonej maszyny, aby docelowy interpreter mógł zacząć korzystać ze swojego proxy SOCKS.
Obsługa SOCKS w pip wymaga, aby opcjonalna zależność SOCKS była dostępna dla interpretera Pythona uruchamiającego pip. Jeśli ten interpreter może dotrzeć do indeksu pakietów tylko przez SOCKS, najpierw pobierz zależność na innej połączonej maszynie.
Na połączonej maszynie przygotuj mały katalog wheel:
python -m pip download --only-binary=:all: --dest wheelhouse PySocks
Przenieś ten katalog na maszynę docelową, a następnie użyj jej docelowego interpretera do instalacji lokalnej:
python -m pip install --no-index --find-links wheelhouse PySocks
--no-index utrzymuje ten krok przygotowawczy na dostarczonych plikach. Nie próbuje rozwiązać pierwotnego problemu z łącznością przez kolejne żądanie do indeksu.
Gdy zależność jest dostępna, dla właściwej operacji na pakiecie można wybrać trasę SOCKS:
python -m pip install --proxy socks5h://proxy.example.net:1080 package_name
W przypadku dozwolonych publicznych pobrań pakietów bez uwierzytelniania proxy zastąp punkt końcowy kandydatem z listy proxy SOCKS5 i wybierz zamierzony pakiet. Zapis socks5h wymaga rozwiązywania nazwy miejsca docelowego przez proxy; socks5 wybiera w tej ścieżce klienta lokalne rozwiązywanie celu.
Utrzymuj instalację przygotowawczą i operację na pakiecie na tym samym interpreterze i w tym samym środowisku. Instalacja PySocks w innym Pythonie pozostawia importy docelowego pip bez zmian. Przydatnym sprawdzeniem jest to, które polecenie python -m pip wykonuje pracę, a nie to, czy inny terminal zgłasza, że PySocks jest zainstalowany.