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实现查找系统盘中需要找的字符
Jul 14 Python
Python3单行定义多个变量或赋值方法
Jul 12 Python
python保存二维数组到txt文件中的方法
Nov 15 Python
Python操作json的方法实例分析
Dec 06 Python
python机器学习库scikit-learn:SVR的基本应用
Jun 26 Python
Python字符串处理的8招秘籍(小结)
Aug 13 Python
原来我一直安装 Python 库的姿势都不对呀
Nov 11 Python
最新2019Pycharm安装教程 亲测
Feb 28 Python
解决运行出现'dict' object has no attribute 'has_key'问题
Jul 15 Python
Python安装Bs4的多种方法
Nov 28 Python
详解win10下pytorch-gpu安装以及CUDA详细安装过程
Jan 28 Python
浅谈Python数学建模之固定费用问题
Jun 23 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 数组的合并、拆分、区别取值函数集
2010/02/15 PHP
php切割页面div内容的实现代码分享
2012/07/31 PHP
php利用cookie实现自动登录的方法
2014/12/10 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
2017/08/28 PHP
PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法
2017/11/10 PHP
PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】
2019/05/13 PHP
jquery 简单图片导航插件jquery.imgNav.js
2010/03/17 Javascript
js多级树形弹出一个小窗口层(非常好用)实例代码
2013/03/19 Javascript
禁止iframe脚本弹出的窗口覆盖了父窗口的方法
2014/09/06 Javascript
JavaScript中的对象与JSON
2015/07/03 Javascript
javascript跨域方法、原理以及出现问题解决方法(详解)
2015/08/06 Javascript
JavaScript操作XML/HTML比较常用的对象属性集锦
2015/10/30 Javascript
Node.js检测端口(port)是否被占用的简单示例
2016/09/29 Javascript
详解能在多种前端框架下使用的表格控件
2017/01/11 Javascript
JavaScript闭包和回调详解
2017/08/09 Javascript
使用SVG基本操作API的实例讲解
2017/09/14 Javascript
Angular项目从新建、打包到nginx部署全过程记录
2017/12/09 Javascript
Node.js中DNS模块学习总结
2018/02/28 Javascript
详解auto-vue-file:一个自动创建vue组件的包
2019/04/26 Javascript
jQuery中DOM操作原则实例分析
2019/08/01 jQuery
seajs和requirejs模块化简单案例分析
2019/08/26 Javascript
JS实现打砖块游戏
2020/02/14 Javascript
python 自动化将markdown文件转成html文件的方法
2016/09/23 Python
从请求到响应过程中django都做了哪些处理
2018/08/01 Python
Python colormap库的安装和使用详情
2020/10/06 Python
详解通过focusout事件解决IOS键盘收起时界面不归位的问题
2019/07/18 HTML / CSS
迷你分体式空调:SoGoodToBuy
2018/08/07 全球购物
Ever New加拿大官网:彰显女性美
2018/10/05 全球购物
英国玛莎百货新西兰:Marks & Spencer New Zealand
2019/07/21 全球购物
医科大学生毕业的自我评价分享
2013/11/12 职场文书
精神文明单位申报材料
2014/05/02 职场文书
销售团队口号大全
2014/06/06 职场文书
环保项目建议书
2014/08/26 职场文书
毕业生个人总结
2015/02/28 职场文书
2015年护士医德医风自我评价
2015/03/03 职场文书
校园开放日新闻稿
2015/07/17 职场文书