python - 离线安装模块

文章详细介绍了如何下载和安装Python模块,包括处理`whl`不被支持的错误,配置PyCharm的Python环境,以及检查和更改Python安装路径。还提供了离线安装模块的方法,包括查看兼容版本,下载对应平台的whl包,处理依赖关系。特别提到了安装bs4和pyinstaller模块时遇到的问题及解决步骤,强调了更新和管理依赖包的重要性。

python模块下载:

python官网:https://www.python.org/

whl is not a supported wheel on this platform.解决办法:https://blog.csdn.net/t18438605018/article/details/121769227
pycharm配置python环境(改为安装python程序的路径,即可使用python已安装的模块):https://jingyan.baidu.com/article/e75057f21d6cd1aac81a8934.html

查询自己的python安装路径的exe/app文件位置

  • window:where python
  • macos:which python3.7

查看当前平台支持的版本:pip3.7 debug --verbose
安装模块:pip3.7 install xxx
查看已经安装模块的版本:pip3.7 list

cp37表示自己的python版本是3.7,cp36则表示python版本是3.6;
macosx表示苹果系统,win32表示Windows32位(马上要淘汰了),win_amd64表示Windows64位(大多数人用的),manylinux表示Linux系统。

更新pip工具包:python -m pip install --upgrade pip

批量安装文件夹下的模块(cmd终端操作)

1.输入【cd 需要安装的文件夹目录】回车
2.输入【sudo pip3 install * -f ./ --no-deps】回车安装

离线更新pip工具包

1. 首先使用命令查看当前平台支持的版本:pip debug --verbose

(如果下载的模块不是当前平台支持的版本,会报错whl is not a supported wheel on this platform)

Compatible tags: 826
  cp37-cp37m-macosx_10_11_x86_64
  cp37-cp37m-macosx_10_11_intel
  cp37-cp37m-macosx_10_11_fat64
  cp37-cp37m-macosx_10_11_fat32
  cp37-cp37m-macosx_10_11_universal2
  cp37-cp37m-macosx_10_11_universal
  ......
  cp37-none-any
  py37-none-any
  py3-none-any
  py36-none-any
  py35-none-any
  py34-none-any
  py33-none-any
  py32-none-any
  py31-none-any
  py30-none-any

2. 打开网页https://pypi.org/project/查找需要离线安装的模块

在这里插入图片描述
查看历史版本
在这里插入图片描述
对照平台支持的版本,查看是否能安装,能即可点击下载。
在这里插入图片描述

3. 下载离线包后在终端打指令:pip3.7 install 离线包路径…/xxx.whl

如果安装失败,可以查看是否缺失依赖包,根据提示的下载依赖的模块,安装依赖模块后再次安装初始的模块,如仍然提示缺失,则重复前面的步骤直至提示安装成功。
可以向下兼容,如cp37的可以安装cp36。

安装bs4模块

pip3.7 install …/bs4-0.0.1.tar.gz

报错可以看出,缺失beautifulsoup4模块:
OSError(‘Tunnel connection failed: 407 Proxy Authentication Required’))': /simple/beautifulsoup4/
ERROR: Could not find a version that satisfies the requirement beautifulsoup4 (from bs4) (from versions: none)
ERROR: No matching distribution found for beautifulsoup4

pip3.7 install …/beautifulsoup4-4.11.2-py3-none-any.whl

报错可以看出,缺失soupsieve模块:
OSError(‘Tunnel connection failed: 407 Proxy Authentication Required’))': /simple/soupsieve/
ERROR: Could not find a version that satisfies the requirement soupsieve>1.2 (from beautifulsoup4) (from versions: none)
ERROR: No matching distribution found for soupsieve>1.2

pip3.7 install …/soupsieve-2.4-py3-none-any.whl

最后安装好soupsieve,再安装beautifulsoup4,最终bs4即可安装成功。
Successfully installed soupsieve-2.4
Successfully installed beautifulsoup4-4.11.2
Successfully installed bs4-0.0.1

import sys
sys.path	# 列出搜索路径(一组目录)
sys.path.append('path')	# 把模块所在的位置添加到搜索路径中

安装pyinstaller模块

mac默认安装了python2.7,所以要在pip前面加安装的版本。
pip3.7 debug --verbose

pip3.7 install …/pyinstaller-5.8.0-py3-none-macosx_10_13_universal2.whl

报错可以看出,setuptools模块版本等级太低:
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘ProxyError(‘Cannot connect to proxy.’, OSError(‘Tunnel connection failed: 407 Proxy Authentication Required’))’: /simple/setuptools/
ERROR: Could not find a version that satisfies the requirement setuptools>=42.0.0 (from pyinstaller) (from versions: none)
ERROR: No matching distribution found for setuptools>=42.0.0

查看已经安装模块的版本:pip3.7 list

要求:setuptools>=42.0.0
查到的:setuptools 41.2.0

pip3.7 install /setuptools-67.5.0-py3-none-any.whl

报错可以看出,缺失importlib-metadata模块:
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘ProxyError(‘Cannot connect to proxy.’, OSError(‘Tunnel connection failed: 407 Proxy Authentication Required’))’: /simple/importlib-metadata/

根据最后一个WARNING提示,安装依赖包。直至安装完成。
更新模块,依赖包:
pip-23.0.1-py3-none-any.whl
setuptools-67.5.0-py3-none-any.whl

importlib_metadata-6.0.0-py3-none-any.whl
typing_extensions-4.5.0-py3-none-any.whl
zipp-3.15.0-py3-none-any.whl
pyinstaller_hooks_contrib-2023.0-py2.py3-none-any.whl
macholib-1.16.2-py2.py3-none-any.whl
altgraph-0.17.3-py2.py3-none-any.whl
pyinstaller-5.8.0-py3-none-macosx_10_13_universal2.whl

<think> 我们正在处理用户关于Python离线安装asammdf模块的询问。注意,用户提供的引用内容是关于CANedge2设备使用LIN总线的案例,与当前问题无关,因此我们忽略该引用。 目标:提供Python离线安装asammdf模块的详细步骤。 asammdf是一个用于处理MDF(Measurement Data Format)文件的Python库。离线安装通常意味着在没有互联网连接的环境中安装,因此需要预先下载依赖包。 步骤: 1. 在有互联网的机器上下载asammdf及其依赖包。 2. 将下载的包转移到离线机器上。 3.离线机器上安装。 具体操作: 方法一:使用pip下载wheel文件并离线安装 a. 在有网络的机器上,执行: pip download asammdf 这将下载asammdf及其所有依赖的wheel文件到当前目录。 b. 将整个目录(包含所有下载的.whl文件)复制到离线机器上。 c.离线机器上,进入该目录,执行: pip install --no-index --find-links=. asammdf 方法二:使用pip wheel创建wheel文件并离线安装 a. 在有网络的机器上,创建一个目录,进入该目录,执行: pip wheel asammdf 这会下载源代码和依赖,并构建wheel文件。 b. 将目录下的所有.whl文件复制到离线机器。 c.离线机器上,执行: pip install --no-index --find-links=/path/to/wheel/dir asammdf 注意:确保两台机器的操作系统和Python版本(以及架构,如32/64位)一致,以避免兼容性问题。 方法三:如果离线机器上已经有pip,也可以考虑将下载的wheel文件打包成一个文件夹,然后使用上述命令安装。 如果用户还需要其他注意事项,比如依赖包的管理,可以补充说明。 由于asammdf依赖的包较多,包括numpy, pandas, numexpr, h5py, scipy, matplotlib等,下载的包可能会比较多,需要确保所有依赖都被下载。 另外,如果用户的环境无法安装wheel,可能需要下载源码包(.tar.gz),然后在离线机器上尝试安装,但需要确保离线机器上有编译环境(因为源码包可能需要编译C/C++扩展)。对于Windows用户,通常推荐使用wheel文件以避免编译。 因此,我们推荐使用wheel方式。 生成相关问题: 1. 如何验证asammdf是否安装成功? 2. asammdf有哪些主要功能? 3. 除了pip安装,还可以用什么方式安装Python模块? 4.离线安装过程中遇到依赖问题怎么办? </think> ### Python离线安装asammdf模块的方法 **核心步骤:** 1. **在有网络的机器上准备安装包:** ```bash # 创建保存目录 mkdir asammdf_offline cd asammdf_offline # 下载模块及所有依赖 pip download asammdf ``` 这将下载`.whl`或`.tar.gz`格式的安装包及所有依赖项到当前目录。 2. **传输文件到离线环境:** 将整个`asammdf_offline`目录通过U盘/内网等方式复制到目标离线机器。 3. **在离线机器上安装:** ```bash cd asammdf_offline pip install --no-index --find-links=./ asammdf ``` `--no-index`禁止联网查找,`--find-links`指定本地依赖路径 **关键注意事项:** 1. 确保两台机器的Python版本和操作系统架构(32/64位)一致 2. 推荐使用相同版本的pip(`pip install --upgrade pip`提前升级) 3. 依赖包含:numpy, pandas, numexpr, h5py等(约15-20个包) 4. 若遇编译错误,需在离线机预装C++编译工具链 **验证安装:** ```python import asammdf print(asammdf.__version__) # 输出版本号即成功 ``` **备选方案:** - 使用`pip wheel asammdf`构建二进制轮子(需匹配环境) - 下载GitHub源码包手动安装(需解决依赖树)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值