您的位置:首页 > 编程语言 > Python开发

python hook监听事件

2017-07-27 09:06 211 查看
python hook监听事件

作者:vpoet

日期:夏季

# -*- 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()






执行截图:



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: