txt from create python virtualenv pip

from - use requirements txt python



¿Cómo instalar paquetes usando pip de acuerdo con el archivo Requirements.txt de un directorio local? (8)

Aquí está el problema

Tengo un requisito.txt que se parece a:

BeautifulSoup==3.2.0 Django==1.3 Fabric==1.2.0 Jinja2==2.5.5 PyYAML==3.09 Pygments==1.4 SQLAlchemy==0.7.1 South==0.7.3 amqplib==0.6.1 anyjson==0.3 ...

Tengo un directorio de archivos local que contiene todos los paquetes + otros.

He creado un nuevo virtualenv con

bin/virtualenv testing

al activarlo, traté de instalar los paquetes de acuerdo con Requirements.txt del directorio de archivo local.

source bin/activate pip install -r /path/to/requirements.txt -f file:///path/to/archive/

Tengo algunos resultados que parecen indicar que la instalación está bien.

Downloading/unpacking Fabric==1.2.0 (from -r ../testing/requirements.txt (line 3)) Running setup.py egg_info for package Fabric warning: no previously-included files matching ''*'' found under directory ''docs/_build'' warning: no files found matching ''fabfile.py'' Downloading/unpacking South==0.7.3 (from -r ../testing/requirements.txt (line 8)) Running setup.py egg_info for package South ....

Pero luego la verificación reveló que ninguno de los paquetes está instalado correctamente. No puedo importar el paquete y no se encuentra ninguno en el directorio site-packages de mi virtualenv. Entonces, ¿qué salió mal?


A menudo, deseará una instalación rápida desde archivos locales, sin sondear PyPI.

Primero, descargue los archivos que cumplan con sus requisitos:

$ pip install --download <DIR> -r requirements.txt

Luego, instale usando –find-links y –no-index :

$ pip install --no-index --find-links=[file://]<DIR> -r requirements.txt


Esto funciona para mí:

$ pip install -r requirements.txt --no-index --find-links file:///tmp/packages

--no-index - Ignora el índice del paquete (solo mirando las URL de --find-links lugar).

-f, --find-links <URL> - Si es una URL o una ruta a un archivo html, analice los enlaces a los archivos. Si una ruta o file:// local file:// URL es un directorio, busque los archivos en la lista del directorio.


He leído lo anterior, me doy cuenta de que esta es una pregunta antigua, pero no está resuelta y aún está en la parte superior de mis resultados de búsqueda de Google, así que aquí hay una respuesta que funciona para todos:

pip install -r /path/to/requirements.txt


Para que virtualenv instale todos los archivos en el archivo Requirements.txt.

  1. Cd al directorio donde se encuentra el archivo Requirements.txt.
  2. activa tu virtualenv
  3. ejecute: pip install -r requirements.txt en su shell

Trabajo con una gran cantidad de sistemas que han sido desechados por los desarrolladores "siguiendo las instrucciones que encontraron en Internet". Es extremadamente común que tu pip y tu python no estén buscando las mismas rutas / paquetes de sitios. Por esta razón, cuando encuentro una rareza, comienzo haciendo esto:

$ python -c ''import sys; print(sys.path)'' ['''', ''/usr/lib/python2.7'', ''/usr/lib/python2.7/plat-x86_64-linux-gnu'', ''/usr/lib/python2.7/lib-tk'', ''/usr/lib/python2.7/lib-old'', ''/usr/lib/python2.7/lib-dynload'', ''/usr/local/lib/python2.7/dist-packages'', ''/usr/lib/python2.7/dist-packages''] $ pip --version pip 9.0.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)

Ese es un sistema feliz .

A continuación se muestra un sistema infeliz . (O al menos es un sistema felizmente ignorante que hace que otros se sientan infelices).

$ pip --version pip 9.0.1 from /usr/local/lib/python3.6/site-packages (python 3.6) $ python -c ''import sys; print(sys.path)'' ['''', ''/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python27.zip'', ''/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7'', ''/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin'', ''/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac'', ''/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages'', ''/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk'', ''/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old'', ''/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload'', ''/usr/local/lib/python2.7/site-packages''] $ which pip pip2 pip3 /usr/local/bin/pip /usr/local/bin/pip3

No está contento porque pip está (python3.6 y) utilizando los paquetes /usr/local/lib/python3.6/site-packages mientras que python está (python2.7 y) utilizando /usr/local/lib/python2.7/site-packages

Cuando quiero asegurarme de que estoy instalando los requisitos en la pitón correcta , hago esto:

$ which -a python python2 python3 /usr/local/bin/python /usr/bin/python /usr/local/bin/python2 /usr/local/bin/python3 $ /usr/bin/python -m pip install -r requirements.txt

Has escuchado: "Si no está roto, no trates de arreglarlo". La versión de DevOps de eso es: "Si no lo rompió y puede solucionarlo, no intente arreglarlo".


Tuve un problema similar. Intenté esto:

pip install -U -r requirements.txt

(-U = actualizar si ya se había instalado)

Pero el problema continuó. Me di cuenta de que algunas de las bibliotecas genéricas para el desarrollo se perdían.

sudo apt-get install libtiff5-dev libjpeg8-dev zlib1g-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python-tk

No sé si esto te ayudaría.


Instalando el archivo Requirements.txt dentro de env virtual con python 3:

Tuve el mismo problema. Estaba tratando de instalar el archivo Requirements.txt dentro de un entorno virtual. Encontré la solución.

Inicialmente, creé mi env virtual de esta manera:

virtualenv -p python3 myenv

Activa el entorno utilizando:

source myenv/bin/activate

Ahora instalé el Requirements.txt usando:

pip3 install -r requirements.txt

La instalación fue exitosa y pude importar los módulos.


pip install -r requirements.txt

Para más detalles por favor revise la opción de ayuda.

pip install --help

Podemos encontrar la opción ''-r''

-r, --requirement Instalar desde el archivo de requisitos dado. Esta opción se puede utilizar varias veces.

Más información sobre algunas opciones de instalación de pip usadas comúnmente: (Esta es la opción de ayuda en el comando pip install)

También lo anterior es el conjunto completo de opciones. Utilice pip install --help para obtener una lista completa de opciones.