在离线环境下安装python的第三方包

当服务器无法联网时,安装Python依赖包变得复杂。文章介绍了如何通过确定服务器的Python版本和兼容性后缀,然后在有网环境中安装相同Python版本,获取所需包及其版本,下载对应的whl文件,最后在服务器上使用这些文件离线安装的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、背景

       在一些情况下,服务器不能连网,安装python的各种依赖包变得比较麻烦。本文旨在用一种相对简单的方法完成快速安装。whl是编译的二进制文件,通过whl安装可以减少系统对底层的一些缺包的依赖。

2、方法

    (1)首先要弄清楚不能上网的服务器的安装pyton的版本,服务器允许的版本后缀;

             a、import pip;print(pip.pep425tags.get_supported())

 [('cp36', 'cp36m', 'manylinux1_x86_64'), ('cp36', 'cp36m', 'linux_x86_64'), ('cp36', 'abi3', 'manylinux1_x86_64'), ('cp36', 'abi3', 'linux_x86_64'), ('cp36', 'none', 'manylinux1_x86_64'), ('cp36', 'none', 'linux_x86_64'), ('cp35', 'abi3', 'manylinux1_x86_64'), ('cp35', 'abi3', 'linux_x86_64'), ('cp34', 'abi3', 'manylinux1_x86_64'), ('cp34', 'abi3', 'linux_x86_64'), ('cp33', 'abi3', 'manylinux1_x86_64'), ('cp33', 'abi3', 'linux_x86_64'), ('cp32', 'abi3', 'manylinux1_x86_64'), ('cp32', 'abi3', 'linux_x86_64'), ('py3', 'none', 'manylinux1_x86_64'), ('py3', 'none', 'linux_x86_64'), ('cp36', 'none', 'any'), ('cp3', 'none', 'any'), ('py36', 'none', 'any'), ('py3', 'none', 'any'), ('py35', 'none', 'any'), ('py34', 'none', 'any'), ('py33', 'none', 'any'), ('py32', 'none', 'any'), ('py31', 'none', 'any'), ('py30', 'none', 'any')]
              b、通过pip debug --verbose

获取兼容的版本号,为后续获取对应的whl文件做准备。

     (2)在一个能上网的环境下,首先安装跟服务器版本一致的python环境,比如服务器安装的是3.6.5,在能上网的电脑上也安装一个同样版本3.6.5的python环境。

参考linux安装python3.6.5_ming5641的博客-优快云博客

做好相关的pip的升级

python3.6 -m pip install --upgrade pip

接下来以安装xgboost为例进行说明:在连网的机器上

sudo /usr/bin/python36/bin/python3.6 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xgboost

会进入自动安装,一直等待安装完毕后,获取相对应的版本号以及依赖关系:第一可通过 python3.6 -m pip show xgboost,查看依赖了哪些包名,继而通过pip list查看对应的包的版本号;第二可通过pipdeptree -p xgboost获取带有版本号的依赖树。

(3)通过(2)拿到了对应的版本号,可制作成requirement.txt, 根据对应的版本号,结合(1)获取的后缀名,到Simple Index 快照里获取服务器匹配的whl或tar.gz文件

(4)将下载的whl文件和requierment.txt一起打包,上传到服务器,通过

python3.6 -m pip install -r requirement.txt --no-index --find-links=whl文件所在路径,就可以快速完成安装

3、总结

   我们核心的问题是要获取到对应的编号和兼容匹配的版本,通过上网的机器模拟安装来获取依赖关系及版本号,下载适合服务器要求后缀的whl,就可以快速完成安装。过程碰到问题可根据实际情况进行相应的解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值