Si quiero usar el pip
comando para descargar un paquete (y sus dependencias), pero conservar todos los archivos comprimidos que se descargan (por ejemplo, django-socialregistration.tar.gz), ¿hay alguna manera de hacerlo?
Probé varias opciones de línea de comandos, pero siempre parece descomprimir y eliminar el archivo zip, o obtiene el archivo zip, pero solo para el paquete original, no las dependencias.
pip install path-to-downloaded-package
sudo pip install <path-to-downloaded-package> --no-index --find-links `pwd`
pip download
también es compatible-r requirements.txt
para que pueda descargarlos fácilmente desde una máquina conectada a Internet, luego copiarlos a una máquina fuera de línea e instalar cómo mencionaron los comentaristas anterioresLa
--download-cache
opción debe hacer lo que quieras:Sin embargo, cuando probé esto, el paquete principal se descargó, guardó e instaló correctamente, pero las dependencias se guardaron con su ruta URL completa como nombre, un poco molesto, pero todos los
tar.gz
archivos estaban allí.La
--download
opción descarga el paquete principal y sus dependencias y no instala ninguno de ellos. ( Tenga en cuenta que antes de la versión 1.1 la--download
opción no descargaba dependencias).La
pip
documentación describe el uso--download
para instalaciones locales y rápidas .fuente
--no-install
opción. Y tiene razón sobre los nombres de archivo originales, pero al menos los archivos están ahí .--download
opción de descargar el paquete con dependencias.pip install --download
ahora está en desuso y se eliminará del pip 10. pip.pypa.io/en/latest/reference/pip_download/#overview . Utilicepip download somepackage
.pip download -d <dir> { -r requirements.txt | <packagename> }
Siempre hago esto para descargar los paquetes:
pip install --download /path/to/download/to_packagename
O
pip install --download=/path/to/packages/downloaded -r requirements.txt
Y cuando quiero instalar todas esas bibliotecas que acabo de descargar, hago esto:
pip install --no-index --find-links="/path/to/downloaded/dependencies" packagename
O
pip install --no-index --find-links="/path/to/downloaded/packages" -r requirements.txt
Actualizar
Además, para instalar todos los paquetes en un sistema, puede exportarlos todos a los
requirement.txt
que se usarán para instalarlos en otro sistema, hacemos esto:pip freeze > requirement.txt
Luego,
requirement.txt
se puede usar como arriba para descargar, o hacer esto para instalarlos desderequirement.txt
:pip install -r requirement.txt
REFERENCIA: instalador pip
fuente
En la versión 7.1.2, pip descarga la rueda de un paquete (si está disponible) con lo siguiente:
Lo siguiente descarga una distribución fuente:
Estos también descargan las dependencias, si pip las conoce (por ejemplo, si las
pip show package
enumera).Actualizar
Como señaló Anton Khodak ,
pip download
se prefiere el comando desde la versión 8. En los ejemplos anteriores, esto significa que/path/to/downloaded/file
debe darse con una opción-d
, por lo que se reemplazainstall
pordownload
funciona.fuente
Úselo
pip download <package1 package2 package n>
para descargar todos los paquetes, incluidas las dependenciasÚselo
pip install --no-index --find-links . <package1 package2 package n>
para instalar todos los paquetes, incluidas las dependencias. Obtiene todos los archivos deCWD
. No descargará nadafuente
pip wheel
es otra opción que debes considerar:Descargará paquetes y sus dependencias a un directorio (directorio de trabajo actual por defecto), pero realiza el paso adicional de convertir cualquier paquete fuente a ruedas.
Admite convenientemente archivos de requisitos:
Agregue el
--no-deps
argumento si solo desea los paquetes solicitados específicamente:fuente
Preferiría (RHEL) -
pip download package==version --no-deps --no-binary=:all:
fuente
instalar paquetes de Python sin conexión
Para usuarios de Windows :
A descargar en un archivo, abra su cmd y siga esto:
cd <*the file-path where you want to save it*>
pip download <*package name*>
el paquete y las dependencias se descargarán en el directorio de trabajo actual.
Para instalar desde el directorio de trabajo actual:
configure su carpeta donde descargó como el cwd y luego siga estos:
pip install <*the package name which is downloded as .whl*> --no-index --find-links <*the file locaation where the files are downloaded*>
esto buscará dependencias en esa ubicación.
fuente