Files
CSV2ANKI/mp3/rename_mp3.py
2025-06-29 16:10:14 +02:00

44 lines
1.5 KiB
Python

import re, os
import unicodedata
from xml.dom.minidom import Element
from pydub.effects import normalize
#Lese eine Datei
with open('Uebersicht_der_Wörter_20250421.txt', 'r', encoding='utf-8') as input_file:
for line in input_file:
tmp = line.split('\t')[2]
nr = line.split('\t')[0]
# Löschen aller Zeichen die nicht Buchstaben oder Unterstrich sind
tmp = re.sub(r'[^a-zA-ZäöüÜÄÖåÅé -]', '', tmp)
# Löschen der Leezeichen am Ende
tmp = tmp.strip()
nr = nr.strip()
# Umwandeln von Leerzeichen in Unterstrich
tmp = tmp.replace(" ", "_")
#print(tmp)
# Suche im Ordner im Pfad der Python-Datei eine Datei die den Namen tmp hat
for root, dirs, files in os.walk("."):
for file in files:
if file.endswith(".mp3"):
#Suche den Dateinamen ohne die Erweiterung
file = unicodedata.normalize('NFC', os.path.splitext(file)[0])
#print ("File: "+ file.lower())
if file.lower() == tmp.lower():
#der Vergleich funktioniert nicht 'ägaren' und 'ägaren' sind nicht gleich
#Kann man String noch anders vergleichen?
#print("Gefunden: "+nr +"-" +tmp.lower()+".mp3")
#print("Neu: "+nr +"-" +tmp.lower()+".mp3")
os.rename(file+".mp3", nr+ "-" +tmp.lower()+".mp3") # Umbenenne die Datei