Sicuramente è capitato anche voi tantissime volte.
Il telefono suona, nel mio caso è la segretaria del nuovo cliente che presa dall’euforia per il nuovo sito aziendale, ha accuratamente preparato tera e tera di foto a partire dal lontano 1935; anno in cui il bisnonno del proprietario ha fondato l’azienda.
Le chiedi quindi di mandarteli con WeTransfer o di condividerti la cartella di Drive, ma è tutto inutile perchè ha tutto sul pc; così organizzi un appuntamento e per un soffio ti rendi conto che il tuo misero hard disk esterno è appena sufficiente per tutto quel materiale.
Le chiedi se hanno delle preferenze sulle foto da inserire, vista la mole di materiale che ti ha appena passato e candidamente ti risponde che: “il capo le vuole tutte!”.
In quel momento qualcosa era andata in corto circuito, provavo qualcosa a metà tra sgomento e disperazione. Non ricordo bene cosa sia successo. Quando ho ripreso coscienza dallo shock ero davanti al pc acceso con l’hard disk sulla scrivania pronto per essere collegato.
Ho iniziato a dividere le foto per tema, soggetti e anno. Quando ho finito non mi rimaneva che rinominarle senza accenti o caratteri speciali e comprimerle per web; così mi sono programmato gli strumenti che mi avrebbero salvato la vita.
Strumento per rinominare più file contemporaneamente
Lo script che segue modifica in maniera massiva tutti i nomi dei file presenti una specifica cartella modificando tre semplici variabili:
- folder: indica il percorso della cartella contenente tutti i file da rinominare
- prefix: il prefisso che tutti i file devono avere
Una volta avviato lo script verrà visualizzato l’elenco dei file che sono stati convertiti.
import os
import datetime
folder = 'target/'
prefix = 'arrampicata-'
endWith = 'number' # number o time
n = 1
files = os.listdir( folder )
Current_Date = datetime.datetime.today().strftime ('%Y-%m-%d')
for f in files :
ext = f[-4:]
fileName = folder + prefix
cfileName = folder + f
if endWith == 'number' :
fileName = folder + prefix + str( n ) + ext
else :
fileName = folder + prefix + Current_Date + ext
os.rename( cfileName , fileName )
print("Rinominato: " + f + " in " + fileName )
n = n + 1
print("")
print("Sono stati rinominati " + str( n ) + " file.")