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

На свързаната машина подгответе малка wheel директория:

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

Прехвърлете тази директория на целевата машина, след което използвайте предвидения за нея интерпретатор за локалната инсталация:

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

--no-index задържа тази подготвителна стъпка върху предоставените файлове. Той не се опитва да реши първоначалния проблем със свързаността с още една заявка към индекса.

След като зависимостта е налична, за действителната операция с пакета може да се избере SOCKS маршрутът:

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

За разрешени публични изтегляния на пакети без удостоверяване на прокси заменете крайната точка с кандидат от списъка със SOCKS5 прокси сървъри и изберете желания пакет. Изписването socks5h изисква разрешаване на името на дестинацията през проксито; socks5 избира локално разрешаване на дестинацията в този клиентски път.

Дръжте подготвителната инсталация и операцията с пакета на един и същ интерпретатор и среда. Инсталирането на PySocks в друг Python оставя импортите на целевия pip непроменени. Полезната проверка е коя python -m pip команда изпълнява задачата, а не дали друг терминал съобщава, че PySocks е инсталиран.

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