pyhook3安装教程及与之相关的一些问题的解决方法

pyHook3是一个python库包,为Windows中的全局鼠标和键盘事件提供回调,可用于监听鼠标和键盘操作,接下来我就说一说如何安装pyhook3。

一、安装swig

1、pyhook3的编译需要swig工具的支持,所以我们首先需要安装swig,直接点击swig下载(也可以复制此链接https://sourceforge.net/projects/swig/files/swigwin/swigwin-3.0.12/swigwin-3.0.12.zip/download?use_mirror=nchc),跳转到下载页面便会自动下载swig安装包。pyhook3安装教程及与之相关的一些问题的解决方法_第1张图片
2、下载完成后将swig压缩包解压缩到你想要安装的目录下
在这里插入图片描述在这里插入图片描述
3、点击swig.exe安装swig
pyhook3安装教程及与之相关的一些问题的解决方法_第2张图片
4、复制swig文件所在的当前路径配置环境变量
在这里插入图片描述
pyhook3安装教程及与之相关的一些问题的解决方法_第3张图片

二、下载visual c++ 14.0

若电脑中没有visual c++ 14.0环境,在安装pyhook时会报错visual c++ 14.0 is required,所以pyhook3的安装还需要c++build工具的支持,直接点击下载visual studio,点击安装后会执行安装程序安装visual studio,此时会跳出如下界面,我们勾选C++的桌面开发,然后勾选右下角箭头所指的那一条,那便是我们安装pyhook3需要的工具,当然我们也可以直接去网上搜索Microsoft Visual C++ 14.0进行安装。
pyhook3安装教程及与之相关的一些问题的解决方法_第4张图片

三、pip 安装pyhook3

我们可以直接在cmd下用pip安装pyhook3,但是用pip安装的pyhook3版本可能和你电脑的python版本不一致,这时就会报编码错误。我们可以去非官方的python扩展包中去找适合自己python版本的pyhook3轮子,然后再使用pip安装。
在这里插入图片描述
pyhook3安装教程及与之相关的一些问题的解决方法_第5张图片
在这里插入图片描述
更新


之前写的第三步完全是错的,但我就不删了,你们可以做个借鉴,我也是在导入库包的时候发现import pyhook,并没有PyHook3。

那么错在哪呢?首先在python3环境下使用pip安装的官方包不一定与你的版本匹配,我的是python3.6,官方是没有这个版本的pyhook3的,具体可以去pypi官网看到,所以如果你的版本与下图中的不一致,就只能下载最后一个压缩包使用setup自行安装,安装成功后你就可以导入库包import PyHook3。
pyhook3安装教程及与之相关的一些问题的解决方法_第6张图片
我在安装的过程中还出现一个问题,明明已经安装了visual c++ 14.0(2015),但还是会报错其运行失败,但在这之前还有一个错误,其实那才是出错的根源,fatal error LNK1158: cannot run ‘rc.exe’。然后我去网上查了一下,我们需要将C:\Program Files (x86)\Windows Kits\8.0\bin\x86目录下的rc.exe rcdll.dll这两个文件复制到C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin目录下(也就是visual c++ 14.0的安装目录),问题就完美解决了

这里再说一点,为什么我们一直纠结于pyhook的版本?
  如果你是在python2的环境下使用pyhook2和3版本都是没有问题的,但是如果是在python3环境下使用pyhook2是会出错的。我们使用IDE编写代码并运行监视鼠标操作,当鼠标移动到任务栏的时候就会报错并异常中断。原因是在python3环境下调用pyhook2库获取窗口名时,会因为编码冲突无法识别获取到的窗口名。这个很好理解,例如我们使用非UTF-8的编码格式存储的文档在某些办公软件中打开会有乱码一样,这就是因为编码格式冲突造成的无法识别某些字符。所以要想在python3下使用pyhook,只能用pyhook3版本。

你可能感兴趣的:(python)