我有一个带固定包版本的pip要求文件。我需要在没有直接互联网连接的系统上安装PyPI包。我怎样才能轻松下载我现在需要的软件包,以便稍后安装pip,而无需亲自访问每个软件包页面?
答案 0 :(得分:7)
pip
文档有一个很好的fast and local installs示例:
$ pip install --download <DIR> -r requirements.txt
$ pip install --no-index --find-links=[file://]<DIR> -r requirements.txt
这主要是为了提高速度,但是如果您在连接互联网的机器上执行第一步,将文件复制到另一台机器,然后运行第二步,您应该可以在没有互联网连接的情况下安装所有要求
答案 1 :(得分:1)
要添加福特的答案,为了解决跨平台问题,可以执行以下操作:
在具有互联网访问权限的计算机上执行:
$ pip install --download <DIR> -r requirements.txt
$ pip install --download <DIR> -r requirements.txt --no-use-wheel
如果车轮是跨平台的,这将下载包的可用车轮,但也会下载源,以便在车轮不能用于目标系统的情况下,可以在任何平台上构建包。 / p>
然后,正如福特建议的那样,在从具有互联网访问权限的机器移动到另一台机器之后:
$ pip install --no-index --find-links=[file://]<DIR> -r requirements.txt
我不能保证这会在每种情况下都有效,但是当我尝试下载一个软件包及其依赖于具有Internet访问权限的Windows机器上以便在没有Internet访问权限的CentOS机器上安装时,它对我有用。如果在每台机器上使用不同版本的Python,可能还有其他因素需要考虑(在我的情况下,我在两台机器上都使用了Python 3.4)。