Python ***whl is not a supported wheel on this platfo(Django安装MySQLclinet)

                    Python ***whl is not a supported wheel on this platform.(Django框架安装MySQL驱动的记录)

Django框架是一个功能比较齐全的框架,当然该框架支持各种数据库的Python应用连接,不过,在使用框架前需要环境

配置,而MySQLclinet也就是mysql客户端是必须安装的,如果,你需要你的应用能够使用MySQL数据库。

    安装MySQLclinet有两种方式,第一种,执行 pip install mysqlclient命令,不过此命令在Linux下一般没有问题,在Windows下,通常会提示vc++库版本不正确,会很快报错失败,第二种,网站下载编译好的whl文件直接安装,

网址为:https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient,

根据自己机器上的Python版本选择下载对应的文件即可,我的机器上Python版本是3.8,Windows版本是64位win7:

Python ***whl is not a supported wheel on this platfo(Django安装MySQLclinet)_第1张图片

下载完毕后,cmd执行命令:pip install  mysqlclient-1.4.6-cp38-cp38-win_amd64:

出现报错提示:mysqlclient-1.3.13-cp38-cp38m-win_amd64.whl is not a supported wheel on this platform

意思为该版本不是系统所支持whl,反复核对后,仍然不能安装。

通过 pip 检查工具检查接受安装的标签。打开命令行,如果是 64 位操作系统,输入下列内容:

import pip._internal
print(pip._internal.pep425tags.get_supported())
#输出为:
[('cp38', 'cp38m', 'win_amd64'), ('cp38', 'none', 'win_amd64'), ('py3', 'none', 'win_amd64'), ('cp38', 'none', 'any'), ('cp3', 'none', 'any'), ('py38', 'none', 'any'), ('py3', 'none', 'any'), ('py37', 'none', 'any'), ('py36', 'none', 'any'), ('py35', 'none', 'any'), ('py34', 'none', 'any'), ('py33', 'none', 'any'), ('py32', 'none', 'any'), ('py31', 'none', 'any'), ('py30', 'none', 'any')]

经检查,下载的文件名称为mysqlclient-1.4.6-cp38-cp38-win_amd64,而pip安装标签需求的关于64位系统Python版本3.8的为

('cp38', 'cp38m', 'win_amd64'), ('cp38', 'none', 'win_amd64'), ('py3', 'none', 'win_amd64'), ('cp38', 'none', 'any'), ('cp3', 'none', 'any'), ('py38', 'none', 'any')这四种格式,更改下载的文件名称为上述四个名称任意一个即可,

也就是更改名称为:mysqlclient-1.4.6-cp38-none-win_amd64

不在报错,直接通过安装。

如果机器Windows为32位的,通过 pip 检查工具检查接受安装的标签,命令为:

 

>>> import pip
>>> print(pip.pep425tags.get_supported())

如果报错,首先检查下载的文件的版本号和本机的Python版本已经本机的系统位数是否一致,如果一致,仍然报错,

通过pip检查接受安装的标签,将文件名修改为符合的pip接受安装标签即可。

=============================================================================================

  • 补充说明:查询当前pip所定义的安装标签需求,原理为导入pip目录下的_internal目录下的pep425tags.py文件并调用其中的get_supported()方法。也就是说32位系统和64系统的查询差异在pep425tags.py文件的位置不同,64位系统是在pip文件夹下的_internal文件夹下,32为没有_internal文件夹,仅此而已。

Python ***whl is not a supported wheel on this platfo(Django安装MySQLclinet)_第2张图片

 

Python ***whl is not a supported wheel on this platfo(Django安装MySQLclinet)_第3张图片

你可能感兴趣的:(Python ***whl is not a supported wheel on this platfo(Django安装MySQLclinet))