键盘记录器被困在监听键上,我试着把侦听部分放到另一个脚本中,但是它不实用,它可以使用线程吗?
log_dir = ""
logging.basicConfig(filename=(log_dir + 'keylogs.txt'), \
level=logging.DEBUG, format='%(asctime)s: %(message)s')
def on_press(key):
logging.info(str(key))
with Listener(on_press=on_press) as lister:
lister.join()
path = r'C:\Users\Jacob\Desktop\keylogger\keylogs.txt'
f = open((path), 'r', encoding = 'utf-8')
file = f.readlines()发布于 2022-08-28 20:59:12
如果您想在Listener运行时执行某些操作,那么必须在.join()之前执行,因为它等待侦听器的结束。
with Listener(on_press=on_press) as lister:
# ... your code ...
lister.join()Listener已经使用threading来运行代码,所以您不必在Thread中运行它,并且可以以类似于threading的方式编写它
lister = Listener(on_press=on_press) # create thread
lister.start() # start thread
# ... your code ...
lister.join() # wait for end of threadBTW:
它还具有来自普通Thread - ie的所有其他功能。lister.is_alive()来检查Listener是否仍在运行。
与普通Thread相反,它还命令lister.stop()停止此Listener
https://stackoverflow.com/questions/73521580
复制相似问题