automatisation_python_erase

Supprimer Automatiquement des fichiers de même Extension en Python

Introduction

Avez-vous déjà eu besoin de nettoyer un dossier rempli de fichiers playlist .m3u encombrants ? Par exemple, si vous avez décidé de sauvegarder votre précieuse collection de CD en la « rippant » (convertissant les pistes audio en fichiers numériques) avant que ces disques ne se dégradent, vous avez peut-être remarqué que ce processus crée souvent des fichiers playlist .m3u pour chaque album ou dossier. Bien que pratiques à première vue, ces playlists peuvent s’accumuler et devenir inutiles, encombrant ainsi vos dossiers. Supprimer manuellement ces fichiers peut vite devenir fastidieux, surtout lorsqu’ils sont dispersés dans plusieurs sous-dossiers. Heureusement, un simple script Python permet de rechercher et de supprimer tous les fichiers .m3u d’un dossier, de manière rapide et efficace. Dans cet article, découvrez comment créer et utiliser ce script de façon pratique, même sans être un expert en programmation !

Objectif

Ce script Python vous permettra de :

  1. Parcourir un dossier et tous ses sous-dossiers.
  2. Trouver tous les fichiers .m3u.
  3. Vous présenter une liste des fichiers trouvés.
  4. Demander confirmation pour les supprimer en un seul clic.

Pré-requis

Pour exécuter ce script, il vous faudra :

  • Python installé sur votre machine (version 3.x de préférence).
  • Connaissance de base en ligne de commande (pas d’inquiétude, c’est très simple !).

Le Script Python

Voici le code du script. Copiez-le dans un fichier nommé supprimer_m3u.py par exemple.

Python
import os

def find_m3u_files(directory):
    # Parcours le répertoire et sous-répertoires pour trouver les fichiers .m3u
    m3u_files = []
    for root, dirs, files in os.walk(directory):
        for file in files:
            if file.lower().endswith('.m3u'):
                m3u_files.append(os.path.join(root, file))
    return m3u_files

def delete_files(files):
    # Supprime chaque fichier de la liste fournie
    for file in files:
        try:
            os.remove(file)
            print(f"Supprimé : {file}")
        except Exception as e:
            print(f"Erreur en supprimant {file} : {e}")

def main():
    directory = input("Entrez le chemin du répertoire à analyser : ")
    
    # Recherche des fichiers .m3u
    m3u_files = find_m3u_files(directory)
    if not m3u_files:
        print("Aucun fichier .m3u trouvé.")
        return
    
    # Affiche les fichiers trouvés
    print("Fichiers .m3u trouvés :")
    for file in m3u_files:
        print(file)

    # Demande de confirmation pour la suppression
    confirm = input("Voulez-vous supprimer tous ces fichiers ? (oui/non) : ").strip().lower()
    if confirm == 'oui':
        delete_files(m3u_files)
        print("Tous les fichiers .m3u ont été supprimés.")
    else:
        print("Suppression annulée.")

if __name__ == "__main__":
    main()
Python

Explication du Code

  • find_m3u_files(directory) : Cette fonction explore un dossier et ses sous-dossiers pour identifier tous les fichiers qui se terminent par .m3u. Elle compile la liste des chemins complets de ces fichiers.
  • delete_files(files) : Cette fonction prend en entrée une liste de fichiers et les supprime un par un, tout en affichant une confirmation de chaque suppression.
  • main() : Fonction principale qui orchestre le script. Elle :
    • Demande à l’utilisateur de spécifier le chemin du dossier à scanner.
    • Appelle la fonction pour trouver les fichiers .m3u.
    • Affiche les fichiers trouvés, puis demande à l’utilisateur de confirmer leur suppression.

Utilisation du Script

  1. Ouvrez l’invite de commande (ou PowerShell) et naviguez jusqu’au dossier contenant le fichier supprimer_m3u.py.
  2. Lancez le script avec la commande suivante :
Python
python supprimer_m3u.py
Python
  1. Indiquez le chemin du dossier à analyser lorsqu’il vous le demande :
Python
Entrez le chemin du répertoire à analyser : C:\Users\VotreNom\Musique
Python
  1. Confirmez la suppression en tapant oui ou non. Le script supprimera tous les fichiers .m3u du dossier si vous répondez oui.

Exemple de Résultat

Supposons que vous ayez exécuté le script dans un dossier C:\Musique, et qu’il y ait trois fichiers .m3u répartis dans les sous-dossiers. Le script affichera :

Python
Fichiers .m3u trouvés :
C:\Musique\playlist1.m3u
C:\Musique\SousDossier\playlist2.m3u
C:\Musique\Ancien\playlist3.m3u

Voulez-vous supprimer tous ces fichiers ? (oui/non) :
Python

Si vous répondez oui, chaque fichier sera supprimé, et le script confirmera leur suppression dans la console.

Points Forts de ce Script

  • Simplicité : Le script est léger et efficace, avec des fonctions bien définies.
  • Confirmation de suppression : Il ne supprime rien sans votre confirmation.
  • Polyvalence : Compatible avec Windows, ce script peut aussi fonctionner sous Linux et macOS si besoin.
  • Pratique pour le nettoyage : Idéal pour ceux qui ont des dossiers musicaux avec des fichiers .m3u éparpillés partout.

Conclusion

Avec ce petit script Python, vous avez désormais un moyen rapide de nettoyer vos dossiers de fichiers .m3u en quelques secondes seulement. Que vous soyez un amateur de playlists ou un passionné d’informatique, ce script vous offre une solution élégante pour gérer efficacement votre système de fichiers.