从pypi下载python包及其依赖项以离线安装到另一台机器的最佳方法是什么?使用pip或easy_install是否有简单的方法来做到这一点?我试图在一个没有连接到互联网的FreeBSD盒子上安装请求库。
当前回答
在可以访问internet的系统上
pip download命令允许你下载软件包而不安装它们:
pip download -r requirements.txt
(在pip的以前版本中,这被拼写为pip install——download -r requirements.txt。)
在无法访问internet的系统上
然后你可以使用
pip install --no-index --find-links /path/to/download/dir/ -r requirements.txt
在不访问网络的情况下安装那些下载的模块。
其他回答
离线python。为此,我使用virtualenv(孤立的Python环境)
1)安装virtualenv 与pip在线:
pip install virtualenv --user
或离线使用whl:转到此链接,下载最新版本(。WHL或tar.gz),并使用以下命令安装:
pip install virtualenv-15.1.0-py2.py3-none-any.whl --user
通过使用——user,您不需要使用sudo pip....
2)使用virtualenv
在在线机器上选择一个终端CD目录并运行以下代码:
python -m virtualenv myenv
cd myenv
source bin/activate
pip install Flask
安装完所有的包后,你必须生成一个requirements.txt文件,这样当你的virtualenv处于活动状态时,就可以写了
pip freeze > requirements.txt
打开一个新终端并创建另一个env,如myenv2。
python -m virtualenv myenv2
cd myenv2
source bin/activate
cd -
ls
现在您可以转到您的脱机文件夹,其中有requirements.txt和transferred_packages文件夹。下载带有以下代码的包,并将它们全部放到transferred_packages文件夹中。
pip download -r requirements.txt
把您的脱机文件夹到脱机计算机,然后
python -m virtualenv myenv2
cd myenv2
source bin/activate
cd -
cd offline
pip install --no-index --find-links="./tranferred_packages" -r requirements.txt
离线文件夹[requirements.txt, transferred_packages {Flask-0.10.1.tar.gz,…}]
检查你的包裹清单
pip list
注意:因为我们是在2017年,所以最好使用python 3。使用该命令可以创建python 3 virtualenv。
virtualenv -p python3 envname
从Pypi下载wheel文件(例如ddb -0.5.0-py3-none-any.whl)
pip install dlb-0.5.0-py3-none-any.whl
下载tarball,将它转移到你的FreeBSD机器并提取它,然后运行python setup.py install,你就完成了!
编辑:在此基础上,您现在还可以使用pip安装焦油球。
如果您想离线安装python库及其依赖项,请在具有相同操作系统、网络连接并安装python的机器上完成以下步骤:
1)创建一个包含类似内容的requirements.txt文件(注意-这些是你希望下载的库):
Flask==0.12
requests>=2.7.0
scikit-learn==0.19.1
numpy==1.14.3
pandas==0.22.0
创建需求文件的一个选项是使用pip freeze > requirements.txt。这将列出环境中的所有库。然后您可以进入requirements.txt,删除不需要的文件。
2)执行命令mkdir wheelhouse && pip download -r requirements.txt -d wheelhouse,将lib及其依赖项下载到目录wheelhouse
3)拷贝requirements.txt到wheelhouse目录
4)用tar -zcf wheelhouse.tar.gz归档wheelhouse到wheelhouse.tar.gz
然后上传wheelhouse.tar.gz到你的目标机器:
1)执行tar -zxf wheelhouse.tar.gz解压文件
2)执行pip install -r wheelhouse/requirements.txt——no-index——find-links wheelhouse安装lib及其依赖项
让我一步一步地介绍一下这个过程:
在连接到互联网的计算机上创建一个文件夹。
$ mkdir packages
$ cd packages
打开命令提示符或shell并执行以下命令: 假设你想要的包是tensorflow $ PIP下载tensorflow 现在,在目标计算机上复制packages文件夹并应用以下命令
$ cd packages
$ pip install 'tensorflow-xyz.whl' --no-index --find-links '.'
注意tensorflow-xyz。WHL必须替换为所需包的原始名称。
推荐文章
- 如何在Python中进行热编码?
- 如何嵌入HTML到IPython输出?
- 在Python生成器上使用“send”函数的目的是什么?
- 是否可以将已编译的.pyc文件反编译为.py文件?
- Django模型表单对象的自动创建日期
- 在Python中包装长行
- 如何计算两个时间串之间的时间间隔
- 我如何才能找到一个Python函数的参数的数量?
- 您可以使用生成器函数来做什么?
- 将Python诗歌与Docker集成
- 提取和保存视频帧
- 使用请求包时出现SSL InsecurePlatform错误
- 如何检索Pandas数据帧中的列数?
- except:和except的区别:
- 错误:“字典更新序列元素#0的长度为1;2是必需的”