python hook监听事件详解


Posted in Python onOctober 25, 2018

本文实例为大家分享了python hook监听事件的具体代码,供大家参考,具体内容如下

# -*- coding: utf-8 -*- # 
# by oldj http://oldj.net/ #
import pythoncom 
import pyHook  
def onMouseEvent(event): 
  # 监听鼠标事件   
  print "MessageName:",event.MessageName   
  print "Message:", event.Message   
  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)   
  print "Key:", event.Key   
  print "KeyID:", event.KeyID   
  print "ScanCode:", event.ScanCode   
  print "Extended:", event.Extended   
  print "Injected:", event.Injected   
  print "Alt", event.Alt   
  print "Transition", event.Transition   
  print "---"   
  # 同鼠标事件监听函数的返回值   
  return True 
 
def main():   
  # 创建一个“钩子”管理对象   
  hm = pyHook.HookManager()   
  # 监听所有键盘事件   
  hm.KeyDown = onKeyboardEvent   
  # 设置键盘“钩子”   
  hm.HookKeyboard()   
  # 监听所有鼠标事件   
  hm.MouseAll = onMouseEvent   
  # 设置鼠标“钩子”   
  hm.HookMouse()   
  # 进入循环,如不手动关闭,程序将一直处于监听状态   
  pythoncom.PumpMessages() 
 
if __name__ == "__main__":   
  main()

运行截图:

python hook监听事件详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Django中对数据查询结果进行排序的方法
Jul 17 Python
python修改list中所有元素类型的三种方法
Apr 09 Python
Python画柱状统计图操作示例【基于matplotlib库】
Jul 04 Python
对python创建及引用动态变量名的示例讲解
Nov 10 Python
对python函数签名的方法详解
Jan 22 Python
Python 3.6 中使用pdfminer解析pdf文件的实现
Sep 25 Python
基于Python实现船舶的MMSI的获取(推荐)
Oct 21 Python
使用OpenCV对车道进行实时检测的实现示例代码
Jun 19 Python
python基于exchange函数发送邮件过程详解
Nov 06 Python
PyQt5爬取12306车票信息程序的实现
May 14 Python
深入理解Pytorch微调torchvision模型
Nov 11 Python
微信小程序调用python模型
Apr 21 Python
python根据list重命名文件夹里的所有文件实例
Oct 25 #Python
python学习之hook钩子的原理和使用
Oct 25 #Python
基于Python实现定时自动给微信好友发送天气预报
Oct 25 #Python
python批量修改图片后缀的方法(png到jpg)
Oct 25 #Python
python bmp转换为jpg 并删除原图的方法
Oct 25 #Python
virtualenv 指定 python 解释器的版本方法
Oct 25 #Python
解决python3读取Python2存储的pickle文件问题
Oct 25 #Python
You might like
Uchome1.2 1.5 代码学习 common.php
2009/04/24 PHP
批量修改RAR文件注释的php代码
2010/11/20 PHP
解析左右值无限分类的实现算法
2013/06/20 PHP
浅谈php中include文件变量作用域
2015/06/18 PHP
PHP与JavaScript针对Cookie的读写、交互操作方法详解
2017/08/07 PHP
JavaScript高级程序设计 扩展--关于动态原型
2010/11/09 Javascript
Extjs4 GridPanel的主要配置参数详细介绍
2013/04/18 Javascript
JavaScript实现定时隐藏与显示图片的方法
2015/08/06 Javascript
jQuery实现的多级下拉菜单效果代码
2015/08/24 Javascript
Bootstrap插件全集
2016/07/18 Javascript
jQuery实现的模拟弹出窗口功能示例
2016/11/24 Javascript
jQuery无缝轮播图代码
2016/12/22 Javascript
jQuery实现动态文字搜索功能
2017/01/05 Javascript
Vue实现typeahead组件功能(非常靠谱)
2017/08/26 Javascript
微信小程序实现图片放大预览功能
2020/10/22 Javascript
VUE引入第三方js包及调用方法讲解
2019/03/01 Javascript
js中Generator函数的深入讲解
2019/04/07 Javascript
JS实现的字符串数组去重功能小结
2019/06/17 Javascript
[01:04:30]Fnatic vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
Python中的defaultdict模块和namedtuple模块的简单入门指南
2015/04/01 Python
Python文件读取的3种方法及路径转义
2015/06/21 Python
使用Python编写简单的画图板程序的示例教程
2015/12/08 Python
python类中super()和__init__()的区别
2016/10/18 Python
python实现Decorator模式实例代码
2018/02/09 Python
python小白切忌乱用表达式
2020/05/29 Python
python实现模拟器爬取抖音评论数据的示例代码
2021/01/06 Python
html5指南-3.如何实现html元素拖拽功能
2013/01/07 HTML / CSS
AmazeUI中各种的导航式菜单与解决方法
2020/08/19 HTML / CSS
解释一下Windows的消息机制
2014/01/30 面试题
社区综治宣传月活动总结
2014/07/02 职场文书
2014年团工作总结
2014/11/27 职场文书
运动会开幕式致辞
2015/07/29 职场文书
《猴王出世》教学反思
2016/02/23 职场文书
2016年世界艾滋病日宣传活动总结
2016/04/01 职场文书
导游词之日本富士山
2020/01/06 职场文书
Golang 实现获取当前函数名称和文件行号等操作
2021/05/08 Golang