Si quiero usar el pipcomando 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-packagesudo pip install <path-to-downloaded-package> --no-index --find-links `pwd`pip downloadtambién es compatible-r requirements.txtpara 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-cacheopció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.gzarchivos estaban allí.La
--downloadopció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--downloadopción no descargaba dependencias).La
pipdocumentación describe el uso--downloadpara instalaciones locales y rápidas .fuente
--no-installopción. Y tiene razón sobre los nombres de archivo originales, pero al menos los archivos están ahí .--downloadopción de descargar el paquete con dependencias.pip install --downloadahora 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_packagenameO
pip install --download=/path/to/packages/downloaded -r requirements.txtY cuando quiero instalar todas esas bibliotecas que acabo de descargar, hago esto:
pip install --no-index --find-links="/path/to/downloaded/dependencies" packagenameO
pip install --no-index --find-links="/path/to/downloaded/packages" -r requirements.txtActualizar
Además, para instalar todos los paquetes en un sistema, puede exportarlos todos a los
requirement.txtque se usarán para instalarlos en otro sistema, hacemos esto:pip freeze > requirement.txtLuego,
requirement.txtse puede usar como arriba para descargar, o hacer esto para instalarlos desderequirement.txt:pip install -r requirement.txtREFERENCIA: 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 packageenumera).Actualizar
Como señaló Anton Khodak ,
pip downloadse prefiere el comando desde la versión 8. En los ejemplos anteriores, esto significa que/path/to/downloaded/filedebe darse con una opción-d, por lo que se reemplazainstallpordownloadfunciona.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 wheeles 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-depsargumento 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