Se eu quiser usar o pip
comando para baixar um pacote (e suas dependências), mas manter todos os arquivos compactados que foram baixados (digamos, django-socialregistration.tar.gz) - há uma maneira de fazer isso?
Tentei várias opções de linha de comando, mas sempre parece descompactar e excluir o arquivo zip - ou obtém o arquivo zip, mas apenas para o pacote original, não as dependências.
pip install path-to-downloaded-package
sudo pip install <path-to-downloaded-package> --no-index --find-links `pwd`
pip download
também oferece suporte-r requirements.txt
para que você possa baixar facilmente todos eles de uma máquina conectada à Internet e, em seguida, copiá-los para uma máquina offline e instalar como os comentaristas acima mencionaramA
--download-cache
opção deve fazer o que você quiser:No entanto, quando testei isso, o pacote principal foi baixado, salvo e instalado ok, mas as dependências foram salvas com seu caminho de url completo como o nome - um pouco chato, mas todos os
tar.gz
arquivos estavam lá.A
--download
opção baixa o pacote principal e suas dependências e não instala nenhum deles. ( Observe que antes da versão 1.1, a--download
opção não baixava dependências.)A
pip
documentação descreve o uso--download
para instalações rápidas e locais .fonte
--no-install
opção como ativada. E você está certo sobre os nomes de arquivo funky, mas pelo menos os arquivos estão lá .--download
opção baixar o pacote com dependências.pip install --download
agora está obsoleto e será removido do pip 10. pip.pypa.io/en/latest/reference/pip_download/#overview . Usepip download somepackage
.pip download -d <dir> { -r requirements.txt | <packagename> }
Sempre faço isso para baixar os pacotes:
pip install --download /path/to/download/to_packagename
OU
pip install --download=/path/to/packages/downloaded -r requirements.txt
E quando quero instalar todas as bibliotecas que acabei de baixar, faço o seguinte:
pip install --no-index --find-links="/path/to/downloaded/dependencies" packagename
OU
pip install --no-index --find-links="/path/to/downloaded/packages" -r requirements.txt
Atualizar
Além disso, para ter todos os pacotes instalados em um sistema, você pode exportá-los todos para
requirement.txt
que serão usados para instalá-los em outro sistema, nós fazemos isso:pip freeze > requirement.txt
Em seguida, o
requirement.txt
pode ser usado como acima para download ou faça isso para instalá-los a partir derequirement.txt
:pip install -r requirement.txt
REFERÊNCIA: instalador pip
fonte
Na versão 7.1.2, pip baixa a roda de um pacote (se disponível) com o seguinte:
O seguinte baixa uma distribuição de origem:
Eles também baixam as dependências, se pip estiver ciente delas (por exemplo, se as
pip show package
listar).Atualizar
Conforme observado por Anton Khodak , o
pip download
comando é preferido desde a versão 8. Nos exemplos acima, isso significa que/path/to/downloaded/file
precisa ser fornecido com opção-d
, portanto, a substituiçãoinstall
pordownload
funciona.fonte
Use
pip download <package1 package2 package n>
para baixar todos os pacotes incluindo dependênciasUse
pip install --no-index --find-links . <package1 package2 package n>
para instalar todos os pacotes, incluindo dependências. Ele obtém todos os arquivos deCWD
. Não vai baixar nadafonte
pip wheel
é outra opção que você deve considerar:Ele irá baixar pacotes e suas dependências para um diretório (diretório de trabalho atual por padrão), mas executa a etapa adicional de conversão de quaisquer pacotes de origem em rodas.
Suporta convenientemente os arquivos de requisitos:
Adicione o
--no-deps
argumento se desejar apenas os pacotes especificamente solicitados:fonte
Eu preferiria (RHEL) -
pip download package==version --no-deps --no-binary=:all:
fonte
instalar pacotes python offline
Para usuários do Windows :
Para fazer o download em um arquivo, abra seu cmd e siga isto:
cd <*the file-path where you want to save it*>
pip download <*package name*>
o pacote e as dependências serão baixados no diretório de trabalho atual.
Para instalar a partir do diretório de trabalho atual:
defina sua pasta onde você baixou como o cwd e siga estes:
pip install <*the package name which is downloded as .whl*> --no-index --find-links <*the file locaation where the files are downloaded*>
isso pesquisará dependências nesse local.
fonte