Если я хочу использовать pip
команду для загрузки пакета (и его зависимостей), но сохранить все загружаемые заархивированные файлы (скажем, django-socialregistration.tar.gz) - есть ли способ сделать это?
Я пробовал различные параметры командной строки, но кажется, что он всегда распаковывает и удаляет zip-файл - или получает zip-файл, но только для исходного пакета, а не для зависимостей.
pip install path-to-downloaded-package
sudo pip install <path-to-downloaded-package> --no-index --find-links `pwd`
pip download
также поддерживает,-r requirements.txt
поэтому вы можете легко загрузить их все с подключенного к Интернету компьютера, затем скопировать на автономный компьютер и установить, как упомянули вышеупомянутые комментаторы--download-cache
Вариант должен делать то , что вы хотите:Однако, когда я тестировал это, основной пакет загружался, сохранялся и устанавливался нормально, но зависимости были сохранены с их полным URL-адресом в качестве имени - немного раздражает, но все
tar.gz
файлы были там.--download
Вариант загружает основной пакет и его зависимости и не устанавливает какой - либо из них. ( Обратите внимание, что до версии 1.1 эта--download
опция не загружала зависимости.)В
pip
документации описывается использование--download
для быстрой и локальной установки .источник
--no-install
вариант. И вы правы насчет забавных имен файлов, но, по крайней мере, файлы есть .--download
вариант загрузки пакета с зависимостями.pip install --download
в настоящее время устарело и будет удалено из пункта 10. pip.pypa.io/en/latest/reference/pip_download/#overview . Используйтеpip download somepackage
.pip download -d <dir> { -r requirements.txt | <packagename> }
Я всегда делаю это, чтобы загрузить пакеты:
pip install --download /path/to/download/to_packagename
ИЛИ
pip install --download=/path/to/packages/downloaded -r requirements.txt
И когда я хочу установить все только что загруженные библиотеки, я делаю следующее:
pip install --no-index --find-links="/path/to/downloaded/dependencies" packagename
ИЛИ
pip install --no-index --find-links="/path/to/downloaded/packages" -r requirements.txt
Обновить
Кроме того, чтобы все пакеты были установлены в одной системе, вы можете экспортировать их все, чтобы
requirement.txt
использовать их для установки в другой системе, мы делаем следующее:pip freeze > requirement.txt
Затем их
requirement.txt
можно использовать, как указано выше, для загрузки или сделать это, чтобы установить их изrequirement.txt
:pip install -r requirement.txt
СПРАВКА: установщик pip
источник
В версии 7.1.2 pip загружает колесо пакета (если доступно) со следующим:
Следующее скачивает исходный дистрибутив:
Они также загружают зависимости, если pip знает о них (например, если
pip show package
перечисляет их).Обновить
Как отмечает Anton Ходак ,
pip download
команда является предпочтительной , поскольку версии 8. В приведенных выше примерах это означает , что/path/to/downloaded/file
необходимо уделять с опцией-d
, поэтому заменаinstall
сdownload
работами.источник
Используйте
pip download <package1 package2 package n>
для загрузки всех пакетов, включая зависимостиИспользуйте
pip install --no-index --find-links . <package1 package2 package n>
для установки всех пакетов, включая зависимости. Он получает все файлы изCWD
. Он ничего не скачиваетисточник
pip wheel
еще один вариант, который вам следует рассмотреть:Он загружает пакеты и их зависимости в каталог (по умолчанию текущий рабочий каталог), но выполняет дополнительный шаг по преобразованию любых пакетов с исходным кодом в колеса.
Он поддерживает файлы требований:
Добавьте
--no-deps
аргумент, если вам нужны только специально запрошенные пакеты:источник
Я бы предпочел (RHEL) -
pip download package==version --no-deps --no-binary=:all:
источник
установка пакетов python в автономном режиме
Для пользователей Windows :
Чтобы загрузить в файл, откройте свой cmd и выполните следующее:
cd <*the file-path where you want to save it*>
pip download <*package name*>
пакет и зависимости будут загружены в текущий рабочий каталог.
Для того, чтобы установить из текущего рабочего каталога:
установите папку, в которую вы загрузили, как cwd, затем выполните следующие действия:
pip install <*the package name which is downloded as .whl*> --no-index --find-links <*the file locaation where the files are downloaded*>
это будет искать зависимости в этом месте.
источник