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的GUI框架PySide的安装配置教程
Feb 16 Python
python基于隐马尔可夫模型实现中文拼音输入
Apr 01 Python
Python利用带权重随机数解决抽奖和游戏爆装备问题
Jun 16 Python
python中requests爬去网页内容出现乱码问题解决方法介绍
Oct 25 Python
详解如何利用Cython为Python代码加速
Jan 27 Python
Python使用flask框架操作sqlite3的两种方式
Jan 31 Python
Python实现购物车购物小程序
Apr 18 Python
python中reader的next用法
Jul 24 Python
python中的print()输出
Apr 12 Python
Python3自定义json逐层解析器代码
May 11 Python
python 使用递归的方式实现语义图片分割功能
Jul 16 Python
python 调整图片亮度的示例
Dec 03 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正则的Unknown Modifier错误解决方法
2010/03/02 PHP
解析thinkphp import 文件内容变量失效的问题
2013/06/20 PHP
php 如何获取数组第一个值
2013/08/06 PHP
PHP扩展模块Pecl、Pear以及Perl的区别
2014/04/09 PHP
DEDE实现转跳属性文档在模板上调用出转跳地址
2016/11/04 PHP
laravel 5.4 + vue + vux + element的环境搭配过程介绍
2018/04/26 PHP
PHP使用 Pear 进行安装和卸载包的方法详解
2019/07/08 PHP
JS面向对象编程浅析
2011/08/28 Javascript
jQuery的选择器中的通配符使用介绍
2014/03/20 Javascript
JS实现清除指定cookies的方法
2014/09/20 Javascript
jQuery 中ajax异步调用的四种方式
2016/06/28 Javascript
AngularJs定制样式插入到ueditor中的问题小结
2016/08/01 Javascript
BootStrap Table 设置height表头与内容无法对齐的问题
2016/12/28 Javascript
AngularJS constant和value区别详解
2017/02/28 Javascript
从零开始学习Node.js系列教程二:文本提交与显示方法
2017/04/13 Javascript
详解node-ccap模块生成captcha验证码
2017/07/01 Javascript
关于webpack代码拆分的解析
2017/07/20 Javascript
js判断数组是否包含某个字符串变量的实例
2017/11/24 Javascript
微信小程序实现之手势锁功能实例代码
2018/07/19 Javascript
js使用swiper实现层叠轮播效果实例代码
2018/12/12 Javascript
解决vue-router 嵌套路由没反应的问题
2020/09/22 Javascript
Vue实现多页签组件
2021/01/14 Vue.js
python装饰器初探(推荐)
2016/07/21 Python
Python内置模块turtle绘图详解
2017/12/09 Python
Python实现文件信息进行合并实例代码
2018/01/17 Python
解决python删除文件的权限错误问题
2018/04/24 Python
详解Numpy中的广播原则/机制
2018/09/20 Python
python中JWT用户认证的实现
2020/05/18 Python
pandas创建DataFrame的7种方法小结
2020/06/14 Python
Python读写锁实现实现代码解析
2020/11/28 Python
英国户外装备商店:Ultimate Outdoors
2019/05/07 全球购物
公司年会晚宴演讲稿
2014/01/06 职场文书
《雨点儿》教学反思
2014/04/14 职场文书
校园文化标语
2014/06/18 职场文书
幼师辞职信怎么写
2015/02/27 职场文书
springboot+VUE实现登录注册
2021/05/27 Vue.js