离线安装python包 您所在的位置:网站首页 离线安装python依赖 离线安装python包

离线安装python包

2024-07-16 13:23| 来源: 网络整理| 查看: 265

离线安装python包_补充 一、利用好pip,找到所有依赖库1.要安装 paramiko,先 pip show 一下 paramiko2.继续 pip show 其依赖库3.继续 pip show 其依赖库的依赖库,以此类推4.小结下此次查询的顺序 二、离线包的选择及安装顺序1.离线包的选择2.安装顺序 三、题外话踩坑及填坑经过另外统一声明

近期都很忙,没什么时间安排笔记,今天抽空写一篇很久前就想补充的文章。在我上一篇离线安装第三方库的相关文章里,虽然也可能能安装,但是很麻烦,有时候甚至有些库,在某些环境下或特殊要求下,可能不知道要怎么安装,或者说无法及时解决安装的问题,经过多次踩坑,今天带来一些新的心得 在这里插入图片描述

一、利用好pip,找到所有依赖库

pip 的功能真的很强大,不要局限于只会用 pip install,还有知道其其他命令,比如 pip show,就能解决离线安装第三方库时,所需依赖哪些库的问题 今天拿 paramiko来讲一下

1.要安装 paramiko,先 pip show 一下 paramiko

(我电脑安装了多个版本的 python,所以此处使用 python39 -m,一般情况直接用 pip show paramiko 即可。另外,如果提示找不到该包,就先在自己的环境上,在相应的 python 版本下安装好该库,再执行 pip show)

python39 -m pip show paramiko

在这里插入图片描述 从上图可以看到,使用 pip show paramiko 之后,能查到该库的相关信息,包括版本号等,返回值中,Requires 的值,即为其依赖库

2.继续 pip show 其依赖库 python39 -m pip show bcrypt

在这里插入图片描述

python39 -m pip show cryptography

在这里插入图片描述

python39 -m pip show pynacl

在这里插入图片描述

3.继续 pip show 其依赖库的依赖库,以此类推 python39 -m pip show cffi

在这里插入图片描述

python39 -m pip show six

在这里插入图片描述

python39 -m pip show pycparser

在这里插入图片描述 操作如上述,依次类推,直到 Requires 的值都为空为止,然后将所有相关的库的离线包都下载下来 此处演示的方法是类似“广度优先”(即一层查完,再查下一层)的思路,你们也可以用“深度优先”(即逮住一个不放,先查到Requires的值为空,再跳回来逮住第二个继续查)的方法,看个人喜好

4.小结下此次查询的顺序 python39 -m pip show paramiko # 第一层 python39 -m pip show bcrypt # 第二层 python39 -m pip show cryptography # 第二层 python39 -m pip show pynacl # 第二层 python39 -m pip show cffi # 第三层 python39 -m pip show six # 第三层 python39 -m pip show pycparser # 第四层 二、离线包的选择及安装顺序

在我上一篇文章中提到,如果找不到 .whl 文件,就下载 .tar.gz 文件,可以,但没必要(或者说,先尝试这么安装,最后不行再用回 .tar.gz 包)

1.离线包的选择

同样是到 pypi 上找包,可以根据上面步骤 pip show 出来的信息,查看 Version 的值,获取到相应的版本,此处只举个别例子,不知道怎么下载离线包的,看我上一篇文章 呕心沥血整理,python离线安装第三方库(带疑难杂症实例)!!!中的 第二步:下载并安装离线包 比如下载 bcrypt 离线包,按照之前的理解,找不到 cp39 的版本,此时我会去下载其 tar.gz 包,然后通过解压后,执行其 setup.py 文件(也可以看上一篇文章的操作) 在这里插入图片描述 下载完后,解压等等,没准还得升级C++等其他也很棘手的问题 但由于环境和合规要求,被逼无奈的我发现,并不需要这么麻烦,找不到 cp39 的,直接下最新的版本即可,比如这里的,直接下 cp36 的具体的 whl 文件即可(bcrypt-3.2.0-cp36-abi3-win_amd64.whl) 下载完后,直接 pip install xxx_dir_path/bcrypt-3.2.0-cp36-abi3-win_amd64.whl 即可 在这里插入图片描述

2.安装顺序

安装顺序就很简单了,根据依赖关系,倒着顺序安装即可 顺序示例:

python39 -m pip install pycparser # 第四层 python39 -m pip install six # 第三层 python39 -m pip install cffi # 第三层 python39 -m pip install pynacl # 第二层 python39 -m pip install cryptography # 第二层 python39 -m pip install bcrypt # 第二层 python39 -m pip install paramiko # 第一层

注意,此处只是示例,具体的 pip install 应该是类似这样:

python39 -m pip install C:\Users\big_c\Downloads\bcrypt-3.2.0-cp36-abi3-win_amd64.whl

在安装之前可能还要升级一下 pip 之类的

三、题外话 踩坑及填坑经过

1.银行项目,无法使用外网 2.代码需要投产到运维那边,按理来说我直接把环境信息发给运维即可,但根据以往的经验,我直接过去运维那边投产会来得更快,而且快的不是一点半点。另外,运维的地点和我的平时工作的地点并不在同一个地方,距离几公里,且无法远程,必须到现场投产 3.根据合规性要求,往服务器上传大文件,需要提单,走个单可能需要半天或更久 4.安装 tar.gz 文件时,提示要升级 C++,同理,在线升级 so easy,根据提示到官网下个升级工具即可升级,但是离线升级就 gg 了 5.网上各种找离线升级 C++ 的方法,找到个包,要一点几个G,且不说安全不安全,要提单,我今天就白去运维那边了,所以最好想别的方法 6.于是尝试下载非 cp39 的 whl 包,意外的惊喜,居然成功解决了棘手问题!!! 在这里插入图片描述

另外

如果觉得手动一个个查很麻烦的,有必要我写个代码,直接根据某个库,查到所有依赖库甚至直接帮忙下载下来的,可以留言,我看看有多少人需要,有必要的话我后期可以提供 在这里插入图片描述

统一声明

1.本文为原创博客,原创实属不易,若转载请注明出处,感谢~ 2.关于原创博客内容,可能会有部分内容参考自互联网,如有原创链接会声明引用;如找不到原创链接,在此声明如有侵权请联系删除哈~ 3.看完有帮助,点个赞呗,多谢了~ 在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有