whl is not a supported wheel on this platform
就是说 whl 名的命名不符合它给的规范。
我们首先来查看它的支持:
32 位查看方法:
>>> import pip >>> print(pip.pep425tags.get_supported())
64 位查看方法:
要在 pip 后加一个 ._internal
,不然查不到。
>>> import pip._internal >>> print(pip._internal.pep425tags.get_supported()) [('cp36', 'cp36m', 'win32'), ('cp36', 'none', 'win32'), ('py3', 'none', 'win32') , ('cp36', 'none', 'any'), ('cp3', 'none', 'any'), ('py36', 'none', 'any'), ('py 3', 'none', 'any'), ('py35', 'none', 'any'), ('py34', 'none', 'any'), ('py33', ' none', 'any'), ('py32', 'none', 'any'), ('py31', 'none', 'any'), ('py30', 'none' , 'any')] >>>
下面来举个例子:
支持里有个:('cp36', 'none', 'win32')
,
我下的 whl 名字是:PyHook3-1.6.1-cp35-cp35m-win32
,
安装不了,
我改为:PyHook3-1.6.1-cp36-none-win32
,
就好了,看后面 3 个正好是匹配的。
注: 当然因为 python3.5 和 3.6 一般都是通用的,所以我改了也能用,如果是 python2.7 的,很可能库里存在兼容性问题,即使我改了,用的时候也会报错。当然,如果你很厉害的话,可以把库的代码不兼容的地方也改了,当然也可以用。
喜欢的点个赞❤吧!