python安装PyHook3

2023-11-29 23:52
文章标签 python 安装 pyhook3

本文主要是介绍python安装PyHook3,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

pyhook 报错 “TypeError: KeyboardSwitch() missing 8 required positional arguments: ‘msg’, ‘vk_code’, ‘scan_code’, ‘ascii’, ‘flags’, ‘time’, ‘hwnd’, and ‘win_name’”

一、PyHook3简介

pyHook包为Windows中的全局鼠标和键盘事件提供回调。Python应用程序为用户输入事件注册事件处理程序,如鼠标左下、鼠标左上、键下等,并设置键盘和/或鼠标挂钩。底层的C库报告诸如事件时间、事件发生的窗口名称、事件值、键盘修饰符等信息。

二、安装Swig

Swig介绍
简单包装界面产生器(英语:Simplified Wrapper and Interface Generator, SWIG)是一个开源软件工具,用来将C语言或C++写的计算机程序或函式库,连接脚本语言,例如Lua, Perl, PHP, Python, R, Ruby, Tcl, 和其它语言,例如C#, Java, JavaScript, Go, D, OCaml, Octave, Scilab以及Scheme. 也可以输出成XML格式。

第1步:下载并解压

下载:http://www.swig.org/download.html

从 Swig 官网下载 swigwin-4.0.2 文件并解压(最新版本即可)。由于我要用在Windows平台上,所以下载的是 “swigwin” 版,而不是 “swig” 版。只需要下载并解压即可,解压后的文件夹放到哪里都可以,只要知道 ‘swig.exe’ 文件所在的目录即可。

第2步:配置环境变量

在环境变量path中, 输入 “swig.exe” 文件的所在路径 ,点确定。

三、安装pywin32

下载地址http://www.lfd.uci.edu/~gohlke/pythonlibs/#pywin32

选择适合自己python版本的下载 我的是python3.8 故下载

在这里插入图片描述

四、安装pywin32

pip install pywin32

五、安装pyhook3

···python
pip install PyHook3
···

pyhook3使用

import pythoncom
import PyHook3hm = PyHook3.HookManager()# 鼠标事件处理函数
def OnMouseEvent(event):print('MessageName:',event.MessageName)  #事件名称print('Message:',event.Message)          #windows消息常量 print('Time:',event.Time)                #事件发生的时间戳        print('Window:',event.Window)            #窗口句柄         print('WindowName:',event.WindowName)    #窗口标题print('Position:',event.Position)        #事件发生时相对于整个屏幕的坐标print('Wheel:',event.Wheel)              #鼠标滚轮print('Injected:',event.Injected)        #判断这个事件是否由程序方式生成,而不是正常的人为触发。print('---')# 返回True代表将事件继续传给其他句柄,为False则停止传递,即被拦截return True#键盘事件处理函数
def OnKeyboardEvent(event):print('MessageName:',event.MessageName)          #同上,共同属性不再赘述print('Message:',event.Message)print('Time:',event.Time)print('Window:',event.Window)print('WindowName:',event.WindowName)print('Ascii:', event.Ascii, chr(event.Ascii))   #按键的ASCII码print('Key:', event.Key)                         #按键的名称print('KeyID:', event.KeyID)                     #按键的虚拟键值print('ScanCode:', event.ScanCode)               #按键扫描码print('Extended:', event.Extended)               #判断是否为增强键盘的扩展键print('Injected:', event.Injected)print('Alt', event.Alt)                          #是某同时按下Altprint('Transition', event.Transition)            #判断转换状态print('---')# 同上return True#绑定事件处理函数
hm.MouseAllButtonsDown = OnMouseEvent #将OnMouseEvent函数绑定到MouseAllButtonsDown事件上
hm.KeyDown = OnKeyboardEvent          #将OnKeyboardEvent函数绑定到KeyDown事件上hm.HookMouse()        #设置鼠标钩子
hm.HookKeyboard()   #设置键盘钩子pythoncom.PumpMessages()

这篇关于python安装PyHook3的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/434817

相关文章

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

Python如何去除图片干扰代码示例

《Python如何去除图片干扰代码示例》图片降噪是一个广泛应用于图像处理的技术,可以提高图像质量和相关应用的效果,:本文主要介绍Python如何去除图片干扰的相关资料,文中通过代码介绍的非常详细,... 目录一、噪声去除1. 高斯噪声(像素值正态分布扰动)2. 椒盐噪声(随机黑白像素点)3. 复杂噪声(如伪

Python中图片与PDF识别文本(OCR)的全面指南

《Python中图片与PDF识别文本(OCR)的全面指南》在数据爆炸时代,80%的企业数据以非结构化形式存在,其中PDF和图像是最主要的载体,本文将深入探索Python中OCR技术如何将这些数字纸张转... 目录一、OCR技术核心原理二、python图像识别四大工具库1. Pytesseract - 经典O

基于Linux的ffmpeg python的关键帧抽取

《基于Linux的ffmpegpython的关键帧抽取》本文主要介绍了基于Linux的ffmpegpython的关键帧抽取,实现以按帧或时间间隔抽取关键帧,文中通过示例代码介绍的非常详细,对大家的学... 目录1.FFmpeg的环境配置1) 创建一个虚拟环境envjavascript2) ffmpeg-py

python使用库爬取m3u8文件的示例

《python使用库爬取m3u8文件的示例》本文主要介绍了python使用库爬取m3u8文件的示例,可以使用requests、m3u8、ffmpeg等库,实现获取、解析、下载视频片段并合并等步骤,具有... 目录一、准备工作二、获取m3u8文件内容三、解析m3u8文件四、下载视频片段五、合并视频片段六、错误

Python中提取文件名扩展名的多种方法实现

《Python中提取文件名扩展名的多种方法实现》在Python编程中,经常会遇到需要从文件名中提取扩展名的场景,Python提供了多种方法来实现这一功能,不同方法适用于不同的场景和需求,包括os.pa... 目录技术背景实现步骤方法一:使用os.path.splitext方法二:使用pathlib模块方法三

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4