Comment utiliser pip de Python pour télécharger et conserver les fichiers compressés pour un paquet?
Si je veux utiliser la commande pip
pour télécharger un paquet (et ses dépendances), mais Gardez Tous les fichiers compressés qui sont téléchargés (par exemple, django-socialregistration.tar.gz) existe - il un moyen de le faire?
J'ai essayé diverses options de ligne de commande, mais il semble toujours décompresser et Supprimer le fichier zip-ou il obtient le fichier zip, mais seulement pour le paquet d'origine, pas les dépendances.
5 réponses
L'option --download-cache
devrait faire ce que vous voulez:
pip install --download-cache="/pth/to/downloaded/files" package
Cependant, quand j'ai testé cela, le paquet principal téléchargé, enregistré et installé ok, mais les dépendances ont été enregistrées avec leur chemin d'url complet comme nom-un peu ennuyeux, mais tous les fichiers tar.gz
étaient là.
L'option --download
télécharge le paquet principal et ses dépendances et n'installe aucun d'entre eux. (notez que avant la version 1.1 l'option --download
n'a pas Téléchargé dépendance.)
pip install package --download="/pth/to/downloaded/files"
La documentation pip
décrit l'utilisation de --download
pour installations rapides et locales .
Je fais toujours ceci pour télécharger les paquets:
pip install --download /path/to/download/to_packagename
Ou
pip install --download=/path/to/packages/downloaded -r requirements.txt
Et quand je veux installer toutes ces bibliothèques que je viens de télécharger, je fais ceci:
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
Mise à Jour
Aussi, pour obtenir tous les paquets installés sur le système, vous pouvez exporter tous à requirement.txt
qui sera utilisé pour installer sur un autre système, nous le faisons:
pip freeze > requirement.txt
Ensuite, le requirement.txt
peut être utilisé comme ci-dessus pour le téléchargement, ou faites ceci pour les installer à partir de requirement.txt
:
pip install -r requirement.txt
Référence: installateur pip
pip install --download
est obsolète. A partir de la version 8.0.0 vous devez utiliser pip download
commande:
pip download <package-name>
Dans la version 7.1.2 pip télécharge la roue d'un paquet (si disponible) avec ce qui suit:
pip install package -d /path/to/downloaded/file
Ce qui suit télécharge une distribution source:
pip install package -d /path/to/downloaded/file --no-binary :all:
Ceux-ci téléchargent également les dépendances, si pip en est conscient (par exemple, si pip show package
les répertorie).
Mise à Jour
, Comme l'a noté Anton Khodak, pip download
la commande est préféré depuis la version 8. Dans les exemples ci-dessus, cela signifie que /path/to/downloaded/file
doit être donné avec l'option -d
, donc en remplaçant install
avec download
œuvres.
Utiliser pip download <package1 package2 package n>
pour télécharger tous les paquets y compris les dépendances
Utiliser pip install --no-index --find-links . <package1 package2 package n>
pour installer tous les paquets y compris les dépendances.
Il obtient tous les fichiers de CWD
.
Il ne téléchargera rien