如何修复pyHook typeError?

时间:2019-04-29 23:14:00

标签: python keylogger pyhook

我正在制作一个非常简单的键盘记录程序,每当键入一个按键时,代码就可以工作,但它还会返回一个TypeError: an integer is required (got type NoneType)

除此之外,它都可以正常工作。我已经在线搜索过了,除了pythoncom.PumpMessages()以外,其余都是空白,但是pythoncom却很烦人,给了ModuleNotFoundError: No module named 'pywintypes'。即使我已经下载了pywin32(并尝试了pypiwin32)。

这是我的代码:

import pyHook

def keyPress(e):
    if e.Ascii:
        print(chr(e.Ascii))
        if chr(e.Ascii)=="`":
            exit()
keylog = pyHook.HookManager()
keylog.KeyDown = keyPress
keylog.HookKeyboard()

除了TypeError: an integer is required (got type NoneType)一切正常之外,每当我按下一个键时都会发生(除了当我按下`键时,它会退出且没有错误)。

1 个答案:

答案 0 :(得分:0)

PyHook要求我在函数中返回一个整数,但没有返回任何内容,因此在获取NoneType时出现有关期望整数的错误。我只需要添加return 0