Py之pyHook:pyHook库函数的简介、安装、使用方法之详细攻略

简介: Py之pyHook:pyHook库函数的简介、安装、使用方法之详细攻略


目录

pyHook库函数的简介

pyHook库函数的安装

pyHook库函数的使用方法

1、pyhook监视键盘鼠标


 

 

 

pyHook库函数的简介

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

 

 

pyHook库函数的安装

链接:https://sourceforge.net/projects/pyhook/

PyHook3安装教程https://www.zhihu.com/question/301401791/answer/525833748

 

 

 

pyHook库函数的使用方法

1、pyhook监视键盘鼠标

相关文章:https://www.jianshu.com/p/9146a6038e70

1. from ctypes import *
2. import PyHook3 as pyHook
3. import pythoncom
4. 
5. 
6. def onKeyboardEvent(event):
7. print("onKeyboardEvent")
8.     pid = c_ulong(0)
9.     windowTitle = create_string_buffer(512)
10.     windll.user32.GetWindowTextA(event.Window, byref(windowTitle), 512)
11.     windll.user32.GetWindowThreadProcessId(event.Window, byref(pid))
12.     windowName = windowTitle.value.decode('gbk')
13. print("当前您处于%s窗口" % windowName)
14. print("当前窗口所属进程id %d" % pid.value)
15. print("当前刚刚按下了%s键" % str(event.Ascii))
16. return True
17. 
18. 
19. hm = pyHook.HookManager()
20. hm.KeyDown = onKeyboardEvent
21. hm.HookKeyboard()
22. pythoncom.PumpMessages()

 

相关文章
|
JavaScript 小程序 前端开发
【手把手教教学物联网项目】01 视频大纲
《手把手教教学物联网项目》是一系列视频教程,旨在引导初学者掌握物联网技术。视频涵盖物联网基础,如物联网概述、架构和技术;STM32微控制器的介绍、编程及外设使用;网关开发,涉及ESP8266和ESP32;物联网通信协议如TCP、MQTT、Modbus等;物联网总线协议如单总线、CAN、IIC和SPI;OLED显示原理与驱动;MQTT服务器搭建;物联网云平台介绍,包括阿里云平台的使用;微信小程序开发入门及前端VUE项目实践。此外,教程还涉及UniAPP和SpringBoot后台开发,最后通过“智能取餐柜”项目将理论知识付诸实践。视频可在B站找到,适合学生、爱好者和开发人员学习物联网技术。
1042 12
【手把手教教学物联网项目】01 视频大纲
|
存储 Cloud Native 编译器
MSVC编译器的选择说明
MSVC编译器的选择说明
|
1月前
|
存储 负载均衡 安全
NAKIVO Backup & Replication 11.1 发布 - 快速高效能的备份解决方案
NAKIVO Backup & Replication 11.1 发布 - 快速高效能的备份解决方案
117 0
|
C# 容器
C#中的命名空间与程序集管理
在C#编程中,`命名空间`和`程序集`是组织代码的关键概念,有助于提高代码的可维护性和复用性。本文从基础入手,详细解释了命名空间的逻辑组织方式及其基本语法,展示了如何使用`using`指令访问其他命名空间中的类型,并提供了常见问题的解决方案。接着介绍了程序集这一.NET框架的基本单位,包括其创建、引用及高级特性如强名称和延迟加载等。通过具体示例,展示了如何创建和使用自定义程序集,并提出了针对版本不匹配和性能问题的有效策略。理解并善用这些概念,能显著提升开发效率和代码质量。
463 4
|
Linux Python
Python- jinja2模块详解
Python- jinja2模块详解
1189 1
|
安全 Python
Python系列(16)—— string类型转float类型
Python系列(16)—— string类型转float类型
|
JavaScript 安全 API
vue3注册添加全局实例属性的方法,如何在setup函数中调用
vue3注册添加全局实例属性的方法,如何在setup函数中调用
1708 2
|
存储 弹性计算 大数据
阿里云16核32G服务器价格多少?2024年阿里云16核32G云服务器配置价格及测评参考
阿里云16核32G服务器价格多少?给你提供阿里云16核32G云服务器的详细测评。关于2024年阿里云16核32G云服务器的价格:阿里云16核32G云服务器的价格因不同的实例类型和配置选项而有所不同。一般来说,这种高配置的服务器适用于需要处理大规模数据或运行高负载业务的企业级用户。
2001 1
|
人工智能 算法 Cloud Native
向量数据库小白必关注的“扫盲贴”来啦
自从ChatGPT问世以来,大语言模型受到广泛关注。但大模型更新频率低且不擅长垂直领域知识,向量数据库恰好可以与之互补,通过Retrieval Plugin为大模型和企业私有数据构建了一座桥梁,成为数据面向大模型的切入口。不过,你真的了解向量吗?什么又是向量数据库呢?向量检索的原理又是什么呢?向量爱好者们速速上车,跟着小编一起开启“向量探索之旅”吧!
4710 4
向量数据库小白必关注的“扫盲贴”来啦
|
存储 网络协议 分布式数据库
网络名词术语解析 | 路由、交换机、集线器、半/全双工、DNS、LAN、WAN、端口、MTU
网络名词术语解析 | 路由、交换机、集线器、半/全双工、DNS、LAN、WAN、端口、MTU
676 0