python模块离线安装方式

 更新时间:2023年09月06日 11:16:17   作者:滑滑板的蜗牛  
这篇文章主要介绍了python模块离线安装方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

python模块离线安装

由于需要在无法联网的机器上安装和使用python,且网上搜索的方法总结比较乱,所以记录如下方法。

python模块下载

1、Python下载:Download Python | Python.org

2、Python模块(第三方库)下载: PyPI · The Python Package Index

离线安装python模块

1.下载离线安装包

pip download paramiko -d "D:\python"

2.安装离线包(自动寻找依赖关系)

pip install paramiko --no-index -f "D:\python\paramiko "

该处使用的url网络请求的数据。

注意:

python3版本自带pip,所以直接利用pip进行模块安装即可。

python离线安装module以及常见问题及解决

离线安装module

1.下载module

访问地址 https://pypi.org/,在输入框输入需要的module名称,查找自己需要的module版本进行下载(xxx.tar.gz 或 xxx.tar)

在这里插入图片描述

然后将压缩包传输并解压到服务器的指定目录

2.离线安装

先cd到服务器中进入到解压后的目录后,会发现该目录下有文件 setup.py ,然后先build,再install,就能把该module进行安装

> cd /xxx/xxx/modulexxx
> ls
xxx   xxx   ...  setup.py
> python setup.py build
> python setup.py install

常见的问题

1.模块缺少合适的适配

error: Could not find suitable distribution for Requirement.parse()

离线安装时,最后执行 python setup.py install 经常会遇到module缺少依赖的情况,

如下所示:

Searching for urllib3<1.27,>=1.21.1
Reading https://pypi.org/simple/urllib3/
Download error on https://pypi.org/simple/urllib3/: [Errno 8] nodename nor servname provided, or not known -- Some packages may not be found!
Couldn't find index page for 'urllib3' (maybe misspelled?)
Scanning index of all packages (this may take a while)
Reading https://pypi.org/simple/
Download error on https://pypi.org/simple/: [Errno 8] nodename nor servname provided, or not known -- Some packages may not be found!
No local packages or working download links found for urllib3<1.27,>=1.21.1
error: Could not find suitable distribution for Requirement.parse('urllib3<1.27,>=1.21.1')

这种情况解决起来相对比较简单,只需要再到 https://pypi.org/,去寻找urllib3合适的版本进行下载,再进行离线安装就可以了,操作步骤也如一所示。

2. install成功但发现控制台打印的最后一行显示下载module版本为0.0.0

这种情况比较少见,在网上也没找到相关的问题以及解决方案(也有可能是我查找关键字不对)。

当我离线安装install后显示版本为0.0.0时,我先进入python控制台,然后执行help命令:

> python
>>> help("模块名称")

此时会以vi的方式打开一份文件,定位到最后一行(Shift + g),会看到关于module的一个路径

DATA
    division = _Feature((2, 2, 0, 'alpha', 2), (3, 0, 0, 'alpha', 0), 8192...
FILE
    /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/zipp-0.0.0-py3.7.egg/zipp.py

此时我cd到 /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages路径下,将 zipp-0.0.0-py3.7.egg文件夹名称改为 zipp-0.6.0-py3.7.egg (0.6.0是我安装的版本)

然后再对module(引用zipp的module)进行重新build和install,就可以了。

注意:这种方式是我试出来的,虽然暂时没有发现问题,但不排除存在隐患。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Django日志和调试工具栏实现高效的应用程序调试和性能优化

    Django日志和调试工具栏实现高效的应用程序调试和性能优化

    这篇文章主要介绍了Django日志和调试工具栏实现高效的应用程序调试和性能优化,Django日志和调试工具栏为开发者提供了快速定位应用程序问题的工具,可提高调试和性能优化效率,提高应用程序的可靠性和可维护性
    2023-05-05
  • Python将Excel表格按某列拆分为多个sheet实现过程

    Python将Excel表格按某列拆分为多个sheet实现过程

    这篇文章主要为大家介绍了Python实现将Excel表格按某列拆分为多个sheet,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • 在Flask使用TensorFlow的几个常见错误及解决

    在Flask使用TensorFlow的几个常见错误及解决

    这篇文章主要介绍了在Flask使用TensorFlow的几个常见错误及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • python程序的打包分发示例详解

    python程序的打包分发示例详解

    这篇文章主要为大家介绍了python程序的打包分发示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • 对Keras中predict()方法和predict_classes()方法的区别说明

    对Keras中predict()方法和predict_classes()方法的区别说明

    这篇文章主要介绍了对Keras中predict()方法和predict_classes()方法的区别说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Django在pycharm下修改默认启动端口的方法

    Django在pycharm下修改默认启动端口的方法

    今天小编就为大家分享一篇Django在pycharm下修改默认启动端口的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • 7个关于Python的经典基础案例

    7个关于Python的经典基础案例

    这篇文章主要给大家分享 7个关于Python的经典基础案例,列表排序、调换字典键值、删除列表中的重复元素、输出质数、判断是一年中第几天、猜数字、进制转换;,需要的朋友可以参考一下
    2021-11-11
  • pytorch使用 to 进行类型转换方式

    pytorch使用 to 进行类型转换方式

    今天小编就为大家分享一篇pytorch使用 to 进行类型转换方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python利用Pytorch实现绘制ROC与PR曲线图

    Python利用Pytorch实现绘制ROC与PR曲线图

    这篇文章主要和大家分享一下Python利用Pytorch实现绘制ROC与PR曲线图的相关代码,文中的示例代码讲解详细,具有一定的借鉴价值,需要的可以参考一下
    2022-12-12
  • Python3如何日志同时输出到控制台和文件

    Python3如何日志同时输出到控制台和文件

    这篇文章主要介绍了Python3如何日志同时输出到控制台和文件问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11

最新评论