librerias - Paquetes de Python instalación sin conexión
instalar pip en windows 10 (6)
Descargue el tarball , transfiéralo a su máquina FreeBSD y python setup.py install
, luego ejecute la instalación de python setup.py install
y listo!
EDITAR: solo para agregarlo, también puedes instalar los archivos tar con pip ahora.
¿Cuál es la mejor manera de descargar un paquete python y sus dependencias de pypi para la instalación sin conexión en otra máquina? ¿Hay alguna manera fácil de hacer esto con pip o easy_install? Intento instalar la biblioteca de solicitudes en un cuadro de FreeBSD que no está conectado a Internet.
Para Pip 8.1.2 puede usar pip download -r requ.txt
para descargar paquetes a su máquina local.
Si el paquete está en PYPI, descárguelo y sus dependencias a algún directorio local. P.ej
$ mkdir /pypi && cd /pypi $ ls -la -rw-r--r-- 1 pavel staff 237954 Apr 19 11:31 Flask-WTF-0.6.tar.gz -rw-r--r-- 1 pavel staff 389741 Feb 22 17:10 Jinja2-2.6.tar.gz -rw-r--r-- 1 pavel staff 70305 Apr 11 00:28 MySQL-python-1.2.3.tar.gz -rw-r--r-- 1 pavel staff 2597214 Apr 10 18:26 SQLAlchemy-0.7.6.tar.gz -rw-r--r-- 1 pavel staff 1108056 Feb 22 17:10 Werkzeug-0.8.2.tar.gz -rw-r--r-- 1 pavel staff 488207 Apr 10 18:26 boto-2.3.0.tar.gz -rw-r--r-- 1 pavel staff 490192 Apr 16 12:00 flask-0.9-dev-2a6c80a.tar.gz
Es posible que algunos paquetes deban archivarse en tarballs de aspecto similar a mano. Lo hago mucho cuando quiero una versión más reciente (menos estable) de algo. Algunos paquetes no están en PYPI, por lo que se aplica a ellos.
Supongamos que tiene una aplicación Python correctamente formada en ~/src/myapp
. ~/src/myapp/setup.py
tendrá install_requires
list que menciona una o más cosas que tienes en tu directorio /pypi
. Al igual que:
install_requires=[
''boto'',
''Flask'',
''Werkzeug'',
# and so on
Si quieres poder ejecutar tu aplicación con todas las dependencias necesarias mientras sigues pirateando, harás algo como esto:
$ cd ~/src/myapp $ python setup.py develop --always-unzip --allow-hosts=None --find-links=/pypi
De esta forma, su aplicación se ejecutará directamente desde su directorio de origen. Puede piratear cosas y luego volver a ejecutar la aplicación sin reconstruir nada.
Si quieres instalar tu aplicación y sus dependencias en el entorno python actual, harás algo como esto:
$ cd ~/src/myapp $ easy_install --always-unzip --allow-hosts=None --find-links=/pypi .
En ambos casos, la construcción fallará si una o más dependencias no están presentes en el directorio /pypi
. No intentará instalar de manera promiscua cosas que faltan de Internet.
Recomiendo invocar setup.py develop ...
y easy_install ...
dentro de un entorno virtual activo para evitar contaminar el entorno global de Python. Es (virtualenv eso es) más o menos el camino a seguir. Nunca instale nada en el entorno global de Python.
Si la máquina en la que ha creado su aplicación tiene la misma arquitectura que la máquina en la que desea implementarla, simplemente puede controlar todo el directorio de entorno virtual en el que easy_install
-ed everything. Sin embargo, justo antes de tarballing, debe hacer que el directorio del entorno virtual sea reubicable (consulte la opción --relocatable ). NOTA: la máquina de destino debe tener instalada la misma versión de Python, y también las dependencias basadas en C que pueda tener su aplicación deben estar preinstaladas allí (por ejemplo, si depende de PIL , entonces deben preinstalarse libpng, libjpeg, etc.) .
Uso de paquetes compilados con wheel
.
abrigarse:
$ tempdir=$(mktemp -d /tmp/wheelhouse-XXXXX)
$ pip wheel -r requirements.txt --wheel-dir=$tempdir
$ cwd=`pwd`
$ (cd "$tempdir"; tar -cjvf "$cwd/bundled.tar.bz2" *)
copia tarball e instala:
$ tempdir=$(mktemp -d /tmp/wheelhouse-XXXXX)
$ (cd $tempdir; tar -xvf /path/to/bundled.tar.bz2)
$ pip install --force-reinstall --ignore-installed --upgrade --no-index --no-deps $tempdir/*
Nota: los paquetes binarios de la wheel
no están en todas las máquinas.
Más ref. aquí: https://pip.pypa.io/en/stable/user_guide/#installation-bundles
Utilizo la opción -d
(o --download
) para pip install
, lo que hace que el proceso de descarga de archivos tard sdist de PyPI sea mucho más simple. Por ejemplo, pip install --download /path/to/some/dir celery
descargará los tarballs sdist para el apio y todas sus dependencias a /path/to/some/dir
(pero no los instalará). Luego puede usar pip install --no-index --find-links /path/to/some/dir/ celery
para instalar apio usando esos sdist descargados, sin acceder a la red.
El mismo proceso funciona si reemplaza el celery
en ambos comandos con -r requirements.txt
, donde requirements.txt es un archivo de requisitos de pip que enumera todos los paquetes que desea (y opcionalmente las versiones que desee).
ACTUALIZAR
DEPRECATION: instalación de pip --download ha quedado en desuso y se eliminará en el futuro. Pip ahora tiene un comando de download que debería usarse en su lugar.
El comando es así:
pip download -r requirements.txt
Para python3:
pip3 download -r requirements.txt
pitón sin conexión. para hacer esto uso virtualenv (entorno de Python aislado)
1) instalar virtualenv en línea con pip:
pip install virtualenv --user
o sin conexión con whl: vaya a este link , descargue la última versión (.whl o tar.gz) e instálelo con este comando:
pip install virtualenv-15.1.0-py2.py3-none-any.whl --user
al usar --user
no es necesario usar sudo pip…
2) usar virtualenv
en la máquina en línea seleccione un directorio con terminal cd
y ejecute este código:
python -m virtualenv myenv
cd myenv
source bin/activate
pip install Flask
Después de instalar todos los paquetes, debe generar un archivo requirements.txt
para que mientras esté activo su virtualenv, escriba
pip freeze > requirements.txt
abre una nueva terminal y crea otro env como myenv2
.
python -m virtualenv myenv2
cd myenv2
source bin/activate
cd -
ls
ahora puede ir a su carpeta fuera de línea donde su carpeta requirements.txt
y tranferred_packages
están ahí. Descargue los paquetes con el siguiente código y colóquelos todos en la carpeta tranferred_packages
.
pip download -r requirements.txt
lleva tu carpeta sin conexión a la computadora fuera de línea y luego
python -m virtualenv myenv2
cd myenv2
source bin/activate
cd -
cd offline
pip install --no-index --find-links="./tranferred_packages" -r requirements.txt
lo que está en la carpeta sin conexión [requirements.txt, tranferred_packages {Flask-0.10.1.tar.gz, ...}]
lista de verificación de su paquete
pip list
nota: como estamos en 2017, es mejor usar Python 3. puedes crear python 3 virtualenv con este comando.
virtualenv -p python3 envname