Derniers sujets
Sujets les plus actifs
Les posteurs les plus actifs de la semaine
Mots-clés
Qui est en ligne ?
Il y a en tout 3 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 3 Invités
Aucun
Le record du nombre d'utilisateurs en ligne est de 66 le Mer 14 Fév 2024 - 14:37
Aucun
Le record du nombre d'utilisateurs en ligne est de 66 le Mer 14 Fév 2024 - 14:37
FolderOrganiser
Page 1 sur 1 • Partagez
- InvitéInvité
Merci !
- InvitéInvité
- Code:
import os
import os.path
import shutil
import tkinter as tk
from tkinter.filedialog import askdirectory
from pathlib import Path
from tkinter import messagebox
# Dictionnaire
DIRECTORIES = {
"HTML": [".html5", ".html", ".htm", ".xhtml"],
"IMAGES": [".jpeg", ".jpg", ".tiff", ".gif", ".bmp", ".png", ".bpg", "svg",
".heif", ".psd"],
"VIDEOS": [".avi", ".flv", ".wmv", ".mov", ".mp4", ".webm", ".vob", ".mng",
".qt", ".mpg", ".mpeg", ".3gp", ".mkv"],
"DOCUMENTS": [".oxps", ".epub", ".pages", ".docx", ".doc", ".fdf", ".ods",
".odt", ".pwi", ".xsn", ".xps", ".dotx", ".docm", ".dox",
".rvg", ".rtf", ".rtfd", ".wpd", ".xls", ".xlsx", ".ppt",
"pptx"],
"ARCHIVES": [".a", ".ar", ".cpio", ".iso", ".tar", ".gz", ".rz", ".7z",
".dmg", ".rar", ".xar", ".zip"],
"AUDIO": [".aac", ".aa", ".aac", ".dvf", ".m4a", ".m4b", ".m4p", ".mp3",
".msv", "ogg", "oga", ".raw", ".vox", ".wav", ".wma"],
"PLAINTEXT": [".txt", ".in", ".out"],
"PDF": [".pdf"],
"XML": [".xml"],
"EXE": [".exe"],
"SCRIPTS": [".sh", ".bat", ".py"]
}
def main(app):
app.title("Organise les fichiers en dossiers suivant leurs extensions")
app.geometry("450x100")
selected_dir = tk.StringVar()
selected_dir.set(os.getcwd())
def select_dir():
folder = askdirectory(initialdir=selected_dir.get(),
title='Choisir un répertoire')
if folder:
selected_dir.set(folder)
tk.Button(app, text="Sélectionne", command=select_dir).pack(padx=5, pady=5)
tk.Label(app, width=400,
textvariable=selected_dir,
relief=tk.GROOVE,
bg="pink").pack(padx=5, pady=5)
run = tk.Button(app, text="Organise")
run.config(command=lambda: organise(os.chdir(selected_dir.get())))
run.pack(padx=5, pady=5)
def organise(base):
FILE_FORMATS = {file_format: directory
for directory, file_formats in DIRECTORIES.items()
for file_format in file_formats}
# This will organise your files
def organize():
for entry in os.scandir():
if entry.is_dir():
continue
file_path = Path(entry.name)
file_format = file_path.suffix.lower()
if file_format in FILE_FORMATS:
directory_path = Path(FILE_FORMATS[file_format])
directory_path.mkdir(exist_ok=True)
file_path.rename(directory_path.joinpath(file_path))
# if extension not present in the dictionary than create a folder name "OTHER"
try:
os.mkdir("OTHER")
except:
pass
for dir in os.scandir():
try:
if dir.is_dir():
os.rmdir(dir)
else:
os.rename(os.getcwd() + '/' + str(Path(dir)), os.getcwd() + '/OTHER/' + str(Path(dir)))
except:
pass
if __name__ == "__main__":
organize()
if __name__ == '__main__':
app = tk.Tk()
main(app)
app.mainloop()
- Contenu sponsorisé
Créer un compte ou se connecter pour répondre
Vous devez être membre pour répondre.
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|
Sam 10 Déc 2022 - 10:15 par piwis
» Charte du forum
Sam 29 Oct 2022 - 8:58 par piwis
» rappel du texte de loi sur le plagiat
Sam 13 Aoû 2022 - 18:26 par chris
» Pourquoi nous n'aidons pas en privé
Sam 13 Aoû 2022 - 18:22 par chris
» Amelioration PC
Dim 2 Aoû 2020 - 15:59 par Invité
» Coucou de Juillet
Ven 31 Juil 2020 - 15:30 par Invité
» Windows 10 : début de la fin du Panneau de configuration
Dim 26 Juil 2020 - 9:57 par Invité
» PS5 : pas de prix, pas de date de sortie
Mer 22 Juil 2020 - 10:16 par Invité
» Windows 10 2004 peut briser les espaces de stockage, éviter d’utiliser chkdsk
Mar 21 Juil 2020 - 20:38 par Invité
» Microsoft teste la nouvelle protection anti-malware Windows 10
Mar 21 Juil 2020 - 18:22 par Invité
» Mise à jour Windoxs 10 KB4565503 (OS Build 19041.388)
Mer 15 Juil 2020 - 11:00 par Invité
» Anniversaire de Piwis
Mar 14 Juil 2020 - 10:36 par Invité
» Les bonnes commandes à saisir dans le champ Exécuter
Dim 5 Juil 2020 - 17:59 par Invité
» Débogage USB sous Android
Dim 5 Juil 2020 - 16:16 par Invité
» Coucou de Juin
Dim 5 Juil 2020 - 10:14 par Invité
» Comment savoir si votre pc est infecté ou pas
Sam 4 Juil 2020 - 23:06 par Invité
» Et si nous partageons nos fond écran
Jeu 2 Juil 2020 - 20:21 par Invité
» Windows 10 rafraîchissement du menu Démarrer
Jeu 2 Juil 2020 - 15:45 par Invité
» Carte graphique AMD RADEON HD 7600 Séries
Mar 30 Juin 2020 - 17:19 par Invité
» problème ventilateur
Dim 28 Juin 2020 - 11:07 par Invité
» Attention arnaque qui sévit sur les appels téléphoniques
Mar 23 Juin 2020 - 17:57 par Invité
» Comment accelerer Windows Windows 10
Mar 23 Juin 2020 - 16:54 par Invité