5.3 KiB
CSV-Processor v2.0
Professionelles Werkzeug zur Verarbeitung und Konvertierung von CSV- und Excel-Dateien.
Features
✅ Import von CSV, Excel (XLSX/XLS)
✅ Export als CSV, Excel (XLSX), OpenDocument (ODS)
✅ Spaltennamen-Mapping (z.B. "btr" → "Betrag")
✅ Datenbereinigung (leere Zeilen/Spalten entfernen)
✅ Spaltenauswahl (nur gewünschte Spalten exportieren)
✅ Sortierung nach beliebigen Spalten
✅ Voreinstellungen für wiederkehrende Aufgaben
Programmversionen
CLI-Version (Terminal)
- Für wen: Fortgeschrittene Benutzer, Automatisierung
- Vorteile: Schnell, scriptfähig, volle Kontrolle
- Datei:
csv_processor.py
GUI-Version (Grafisch)
- Für wen: Alle Benutzer, besonders Einsteiger
- Vorteile: Intuitiv, visuelle Vorschau, einfache Bedienung
- Datei:
csv_processor_gui.py
Systemanforderungen
- Python 3.7 oder höher
- Tkinter (für GUI-Version, normalerweise in Python enthalten)
- Optional: openpyxl (für Excel-Support)
- Optional: odfpy (für ODS-Support)
Installation
Option 1: Debian-Paket (.deb)
Für Debian/Ubuntu-basierte Systeme steht ein fertiges Paket bereit:
sudo dpkg -i dist/csv-processor-debian.deb
Nach der Installation:
- CLI-Version:
csv-processor-cli - GUI-Version:
csv-processor-guioder über Anwendungsmenü
Option 2: Direkt mit Python ausführen
# Abhängigkeiten installieren
pip install -r requirements.txt
# CLI-Version starten
python csv_processor.py
# GUI-Version starten
python csv_processor_gui.py
Nutzung
CLI-Version
python csv_processor.py
Sie sehen das Hauptmenü:
╔════════════════════════════════════════════════════════════════╗
║ CSV-PROCESSOR v2.0 - Dateiverarbeitung ║
╚════════════════════════════════════════════════════════════════╝
1. Neue Datei verarbeiten
2. Voreinstellungen verwalten
0. Beenden
Schritt-für-Schritt:
- Quelldatei auswählen (CSV oder Excel)
- CSV-Einstellungen konfigurieren (Encoding, Delimiter)
- Optional: Mapping-Datei für Spaltennamen laden
- Leere Zeilen/Spalten entfernen
- Spalten auswählen
- Optional: Sortierung, Kopf-/Fußzeile
- Ausgabeformat wählen und speichern
- Optional: Als Voreinstellung speichern
GUI-Version
python csv_processor_gui.py
- Datei laden: Klick auf [Durchsuchen] und Datei auswählen
- Einstellungen: Checkboxen für Kopfzeile, leere Zeilen/Spalten
- Spalten: Im Bereich "Spaltenauswahl" gewünschte Spalten markieren
- Vorschau: Optional [Vorschau] klicken
- Speichern: [Verarbeiten & Speichern] klicken
Spaltenauswahl (CLI)
| Eingabe | Bedeutung |
|---|---|
q |
Fertig |
alle |
Alle auswählen |
keine |
Alle abwählen |
3 |
Spalte 3 umschalten |
1,2,3 |
Spalten 1,2,3 umschalten |
+5 |
Spalte 5 ANwählen |
-5 |
Spalte 5 ABwählen |
1-10 |
Spalten 1-10 umschalten |
+1-10 |
Spalten 1-10 ANwählen |
-1-10 |
Spalten 1-10 ABwählen |
Mapping-Dateien
Mapping-Dateien übersetzen technische Spaltennamen in lesbare Namen:
{
"btr": "Betrag",
"dat": "Datum",
"kto": "Kontonummer",
"empf": "Empfänger"
}
Speichern Sie diese als .json-Datei und laden Sie sie im Programm.
Voreinstellungen
Voreinstellungen speichern Ihre Konfiguration für wiederkehrende Aufgaben:
- Kopfzeile ja/nein
- Leere Zeilen/Spalten entfernen
- Mapping-Datei
- Spaltenauswahl
- Ausgabeformat
- CSV-Export-Einstellungen
- Sortierung
Voreinstellungen werden im Verzeichnis csv_processor_config/ gespeichert.
Build
Linux-Executable erstellen
./build_linux.sh
Erstellt eine standalone-Executable in dist/.
Debian-Paket erstellen
./build_debian.sh
Erstellt ein .deb-Paket für Debian/Ubuntu.
Windows-Executable erstellen
./build_windows.bat
Oder unter Linux mit Wine:
./build_windows_wine.sh
Projektstruktur
csv-processor/
├── csv_processor.py # CLI-Version
├── csv_processor_gui.py # GUI-Version
├── requirements.txt # Python-Abhängigkeiten
├── README.md # Diese Datei
├── LICENSE # MIT-Lizenz
├── build_linux.sh # Build-Script Linux
├── build_debian.sh # Build-Script Debian-Paket
├── build_windows.bat # Build-Script Windows
└── dist/ # Fertige Pakete
└── csv-processor-debian.deb
Tipps & Tricks
Große Dateien
- Bei >10.000 Zeilen: 5-30 Sekunden Verarbeitungszeit
- Bei >100.000 Zeilen: CLI-Version ist schneller
- Leere Spalten werden vor der Spaltenauswahl entfernt
CSV-Export für Excel
- Delimiter: Semikolon (;) für deutsche Excel-Versionen
- Quoting: Minimal
CSV-Export für Datenbanken
- Delimiter: Tab
- Quoting: Minimal
- Keine Kopf-/Fußzeile
Lizenz
MIT License - siehe LICENSE
Autor
Sebastian Zell sebastian.zell@zell-aufmass.de
Version: 2.0
Stand: Januar 2026