[Pyhton] Barre de progression avec shutil

Barre de progression avec shutil [Pyhton] - Python - Programmation

Marsh Posté le 21-08-2022 à 11:30:26    

Bonjour,
 
j'ai fait un script qui me permet de copié ou déplacer des fichiers, et j'aimerais ajouter un barre de progression pour la (fonction) copie.
j'ai vue que je pouvais comparer le taille du fichier a la source puis a la destination pour avoir un ratio mais je ne voie pas comment l'implanter dans mon code.
 
Voici mon code :
 
import os
import shutil
 
 
 
print("Le script fonctionne seulement si chaque fichiers porte un nom différents peu importe ou il se situe dans le dossier ou les sous-dossiers. (Exemple : Fichier.txt, Fichier1.txt = ok /\ Fichier.txt, Fichier.txt= Erreur)" )
print("Séléctioné 1 pour déplacer les fichiers \nSelectioné 2 pour copié les fichiers." )
while True:
    choice = input("Entrer 1 ou 2 pour continuer :" )
 
#Déplacement des fichiers par leurs extension "mkv, txt, mp3, ect" Prend les fichier dans les sous dossier
    if choice=="1":
        path = input ("Entrer le chemin complet du dossier source : " )
        out  = input("Entrer le chemin complet du dossier de sortie : " )
        ext  = input ("Entrer l'extension des fichiers a Copié (.mkv, .txt ect) (Une seule extension à la fois) : " )
        for root, dirs, files in os.walk(path):
            for file in files:
                 if(file.endswith(ext)):
                            print((os.path.join(root, file)))
                            shutil.move((os.path.join(root, file)), out)
                            print("Fichier déplacé" )
        print("Tout les fichiers ont été déplacé." )
        break
#copie de fichiers
    elif choice=="2":
        print("Lorsque la copie est terminé un message (Copie terminé) s'affiche." )
        path = input ("Entrer le chemin complet du dossier source : " )
        out  = input("Entrer le chemin complet du dossier de sortie : " )
        ext  = input ("Entrer l'extension des fichiers a Copié (.mkv, .txt ect) (Une seule extension à la fois) : " )
        for root, dirs, files in os.walk(path):
            for file in files:
                 if(file.endswith(ext)):
                            print((os.path.join(root, file)))
                            shutil.copy((os.path.join(root, file)), out,)
                            print("Fichier copié" )
        print("Copie terminé" )
        break
    else:
        print("Choix incorrecte, réessayer." )


Message édité par smitelift le 21-08-2022 à 11:31:11
Reply

Marsh Posté le 21-08-2022 à 11:30:26   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed