How to install packages offline?

StackOverflow

What"s the best way to download a python package and it"s dependencies from pypi for offline installation on another machine? Is there any easy way to do this with pip or easy_install? I"m trying to install the requests library on a FreeBSD box that is not connected to the internet.

Answer rating: 364

On the system that has access to internet

The pip download command lets you download packages without installing them:

pip download -r requirements.txt

(In previous versions of pip, this was spelled pip install --download -r requirements.txt.)

On the system that has no access to internet

Then you can use

pip install --no-index --find-links /path/to/download/dir/ -r requirements.txt

to install those downloaded modules, without accessing the network.

Answer rating: 114

If you want install python libs and their dependencies offline, finish following these steps on a machine with the same os, network connected, and python installed:

1) Create a requirements.txt file with similar content (Note - these are the libraries you wish to download):

Flask==0.12
requests>=2.7.0
scikit-learn==0.19.1
numpy==1.14.3
pandas==0.22.0

One option for creating the requirements file is to use pip freeze > requirements.txt. This will list all libraries in your environment. Then you can go in to requirements.txt and remove un-needed ones.

2) Execute command mkdir wheelhouse && pip download -r requirements.txt -d wheelhouse to download libs and their dependencies to directory wheelhouse

3) Copy requirements.txt into wheelhouse directory

4) Archive wheelhouse into wheelhouse.tar.gz with tar -zcf wheelhouse.tar.gz wheelhouse

Then upload wheelhouse.tar.gz to your target machine:

1) Execute tar -zxf wheelhouse.tar.gz to extract the files

2) Execute pip install -r wheelhouse/requirements.txt --no-index --find-links wheelhouse to install the libs and their dependencies





Get Solution for free from DataCamp guru