import os import tkinter as tk from tkinter import filedialog, messagebox def seleccionar_carpeta(): carpeta = filedialog.askdirectory() if carpeta: entrada_carpeta.delete(0, tk.END) entrada_carpeta.insert(0, carpeta) def renombrar_archivos(): carpeta = entrada_carpeta.get() texto_original = entrada_original.get() texto_nuevo = entrada_nuevo.get() if not carpeta or not texto_original: messagebox.showwarning("Campos incompletos", "Por favor, selecciona una carpeta y completa el texto a reemplazar.") return archivos_renombrados = 0 for nombre_archivo in os.listdir(carpeta): if texto_original in nombre_archivo: nuevo_nombre = nombre_archivo.replace(texto_original, texto_nuevo) ruta_vieja = os.path.join(carpeta, nombre_archivo) ruta_nueva = os.path.join(carpeta, nuevo_nombre) os.rename(ruta_vieja, ruta_nueva) archivos_renombrados += 1 messagebox.showinfo("Proceso finalizado", f"Se renombraron {archivos_renombrados} archivos.") def añadir_texto_al_final(): carpeta = entrada_carpeta.get() texto_final = entrada_final.get() if not carpeta or not texto_final: messagebox.showwarning("Campos incompletos", "Por favor, completa el campo de texto a añadir.") return archivos_modificados = 0 for nombre_archivo in os.listdir(carpeta): ruta_vieja = os.path.join(carpeta, nombre_archivo) nombre_base, extension = os.path.splitext(nombre_archivo) nuevo_nombre = f"{nombre_base}{texto_final}{extension}" ruta_nueva = os.path.join(carpeta, nuevo_nombre) os.rename(ruta_vieja, ruta_nueva) archivos_modificados += 1 messagebox.showinfo("Proceso finalizado", f"Se añadieron textos a {archivos_modificados} archivos.") # Interfaz gráfica root = tk.Tk() root.title("Renombrar o añadir texto a archivos") tk.Label(root, text="Carpeta:").grid(row=0, column=0, sticky="e") entrada_carpeta = tk.Entry(root, width=50) entrada_carpeta.grid(row=0, column=1) tk.Button(root, text="Seleccionar", command=seleccionar_carpeta).grid(row=0, column=2) tk.Label(root, text="Texto a reemplazar:").grid(row=1, column=0, sticky="e") entrada_original = tk.Entry(root) entrada_original.grid(row=1, column=1) tk.Label(root, text="Texto nuevo:").grid(row=2, column=0, sticky="e") entrada_nuevo = tk.Entry(root) entrada_nuevo.grid(row=2, column=1) tk.Label(root, text="Texto a añadir al final:").grid(row=3, column=0, sticky="e") entrada_final = tk.Entry(root) entrada_final.grid(row=3, column=1) tk.Button(root, text="Renombrar", command=renombrar_archivos).grid(row=4, column=1, pady=10, sticky="w") tk.Button(root, text="Añadir texto al final", command=añadir_texto_al_final).grid(row=4, column=1, pady=10, sticky="e") root.mainloop()