Cómo instalar múltiples paquetes de Python a la vez usando pip

190

Sé que es una forma fácil de hacerlo, pero no lo encontré ni aquí ni en Google. Así que tenía curiosidad si hay una manera de instalar múltiples paquetes usando pip. Algo como:

pip install progra1 , progra2 ,progra3 ,progra4 . 

o:

pip install (command to read some txt containing the name of the modules) 
Florín
fuente

Respuestas:

266

Para instalar varios paquetes en la línea de comandos, simplemente páselos como una lista delimitada por espacios, por ejemplo:

pip install wsgiref boto

Para instalar desde un archivo de texto, entonces, desde pip install --help:

-r FILENAME, --requirement = FILENAME

Instale todos los paquetes enumerados en el archivo de requisitos dado. Esta opción se puede usar varias veces.

Eche un vistazo a la documentación de pip con respecto a los archivos de requisitos para su diseño general y sintaxis: tenga en cuenta que puede generar uno basado en el entorno actual / paquetes del sitio pip freezesi desea un ejemplo rápido, por ejemplo (basado en haber instalado wsgirefy botoen un virtualenv limpio ):

$ pip freeze
boto==2.3.0
wsgiref==0.1.2
Kristian Glass
fuente
44
"Lista delimitada por espacios" no parece funcionar para mí si hay dependencias entre los paquetes, por ejemplo: sudo -H pip install setuptools trezorcausa este error: "No se pudieron importar las herramientas de instalación que se requieren para instalar desde una distribución de origen. Instale las herramientas de instalación". En cambio, necesito ejecutar como 2 comandos separados.
Jonathan Cross el
¿ pip install wsgiref botoInstala esto también las bibliotecas con sus dependencias?
Mockash
101
pip install -r requirements.txt

y en el archivo require.txt coloca sus módulos en una lista, con un elemento por línea.

  • Django = 1.3.1

  • Sur> = 0.7

  • barra de herramientas django-debug

Radu Gheorghiu
fuente
¿Cómo puedo hacer lo mismo con conda? ¿alguna idea? conda intsall -r required.txt no funciona.
CKM
Pruebe esto: stackoverflow.com/questions/35802939/…
tisaconundrum
¿Tiene que especificar la versión #? En otras palabras, si solo coloca Djangouna línea, ¿instalaría automáticamente la última versión?
Jon Grah
No tiene que especificar un número de versión, y generalmente no es necesario, aunque a pipveces es difícil predecir qué versión se instala exactamente , especialmente si ha configurado pipcon múltiples índices de origen y / u opciones de configuración que limitan qué paquetes pueden estar instalado. Una necesidad común es especificar un requisito mínimo de versión, comopip >= 9.0
tripleee
14

Puede instalar los paquetes enumerados en un archivo de texto llamado archivo de requisitos . Por ejemplo, si tiene un archivo llamado que req.txtcontiene el siguiente texto:

Django==1.4
South==0.7.3

y emites en la línea de comando:

pip install -r req.txt

pip instalará los paquetes enumerados en el archivo en las revisiones específicas.

Masci
fuente
5

Complementando las otras respuestas, puede usar la opción --no-cache-dirpara deshabilitar el almacenamiento en caché en pip. Mi máquina virtual se bloqueaba al instalar muchos paquetes a la vez con pip install -r requirements.txt. Lo que resolvió para mí fue:

pip install --no-cache-dir -r requirements.txt
victortv
fuente
0

dar el mismo comando que solía dar al instalar un solo módulo, solo pasarlo a través del formato delimitado por espacios

SATYAJIT MAITRA
fuente