41 lines
1.2 KiB
Python
41 lines
1.2 KiB
Python
import pandas as pd
|
|
import chardet
|
|
|
|
|
|
# Prüft Formatierung der CSV, formatiert diese zu utf-8 und speichert das Ergebnis als neue Liste
|
|
def format_csv(path, type):
|
|
with open(path, 'rb') as file:
|
|
result = chardet.detect(file.read())
|
|
|
|
detected_encoding = result['encoding']
|
|
|
|
# CSV-Datei mit Pandas einlesen
|
|
try:
|
|
df = pd.read_csv(path, encoding=detected_encoding)
|
|
print("Datei erfolgreich eingelesen.")
|
|
df.to_csv(type, index=False, encoding='utf-8')
|
|
print("UTF-8 Kopie erfolgreich erstellt.")
|
|
|
|
except pd.errors.ParserError as e:
|
|
# Wenn ein Parserfehler auftritt, gibt eine Fehlermeldung aus
|
|
print(f"Fehler beim Einlesen der CSV-Datei: {e}")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
oldlist = 'Data/alte-liste-utf.csv'
|
|
newlist = 'Data/neue-liste-utf.csv'
|
|
|
|
# Liste nach Fehler prüfen und ggfs Zeichern ersetzen
|
|
|
|
#path_old_csv = input('Pfad zur alten Liste eingeben eingeben: ')
|
|
#format_csv(path_old_csv, oldlist)
|
|
#path_new_csv = input('Pfad zur neuen Liste eingeben eingeben: ')
|
|
#format_csv(path_new_csv, newlist)
|
|
|
|
# Generierte Listen mit pandas öffnen
|
|
# Spaltennamen prüfen und überflüssige Spalten löschen
|
|
# Abgleich starten -collisions
|
|
|
|
|