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 相关文章推荐
python支持断点续传的多线程下载示例
Jan 16 Python
python flask 多对多表查询功能
Jun 25 Python
Python实现屏幕截图的两种方式
Feb 05 Python
Pycharm导入Python包,模块的图文教程
Jun 13 Python
python得到qq句柄,并显示在前台的方法
Oct 14 Python
使用Python实现毫秒级抢单功能
Jun 06 Python
关于阿里云oss获取sts凭证 app直传 python的实例
Aug 20 Python
python清空命令行方式
Jan 13 Python
python GUI库图形界面开发之PyQt5拖放控件实例详解
Feb 25 Python
Python爬取酷狗MP3音频的步骤
Feb 26 Python
python爬取股票最新数据并用excel绘制树状图的示例
Mar 01 Python
python 使用tkinter与messagebox写界面和弹窗
Mar 20 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
PHP与javascript实现变量交互的示例代码
2013/07/23 PHP
php array_walk 对数组中的每个元素应用用户自定义函数详解
2016/11/18 PHP
PHP根据key删除数组中指定的元素
2019/02/28 PHP
Javascript实例教程(19) 使用HoTMetal(6)
2006/12/23 Javascript
List all the Databases on a SQL Server
2007/06/21 Javascript
jquery HotKeys轻松搞定键盘事件代码
2008/08/30 Javascript
jquery 框架使用教程 AJAX篇
2009/10/11 Javascript
Javascript 面向对象 命名空间
2010/05/13 Javascript
jQuery 获取浏览器所在的IP地址的小例子
2013/11/08 Javascript
jquery中的查找parents与closest方法之间的区别
2013/12/02 Javascript
jquery选择器之基本过滤选择器详解
2014/01/27 Javascript
基于jquery实现动态竖向柱状条特效
2016/02/12 Javascript
node.js cookie-parser 中间件介绍
2016/06/06 Javascript
jquery自定义表单验证插件
2016/10/12 Javascript
BootStrap Table 后台数据绑定、特殊列处理、排序功能
2017/05/27 Javascript
Vue用v-for给循环标签自身属性添加属性值的方法
2018/10/18 Javascript
详解Vue的watch中的immediate与watch是什么意思
2019/12/30 Javascript
mapboxgl区划标签避让不遮盖实现的代码详解
2020/07/01 Javascript
[02:11]2016国际邀请赛中国区预选赛最美TA采访现场玩家
2016/06/28 DOTA
python读取oracle函数返回值
2016/07/18 Python
python Matplotlib画图之调整字体大小的示例
2017/11/20 Python
Python3.6基于正则实现的计算器示例【无优化简单注释版】
2018/06/14 Python
Python 利用高德地图api实现经纬度与地址的批量转换
2019/08/14 Python
Pytorch之Variable的用法
2019/12/31 Python
Numpy 理解ndarray对象的示例代码
2020/04/03 Python
虚拟机下载python是否需要联网
2020/07/27 Python
python Xpath语法的使用
2020/11/26 Python
Maison Lab荷兰:名牌Outlet购物
2018/08/10 全球购物
工程班组长岗位职责
2013/12/30 职场文书
小学综合实践活动总结
2014/07/07 职场文书
珠宝的促销活动方案
2014/08/31 职场文书
法定授权委托证明书
2014/09/27 职场文书
单位法人授权委托书范本
2014/10/09 职场文书
2014幼儿园卫生保健工作总结
2014/12/05 职场文书
委托书格式要求
2015/01/28 职场文书
pytorch中F.avg_pool1d()和F.avg_pool2d()的使用操作
2021/05/22 Python