Go to file
Sebastian Zell a2a9d7ac5a Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00
dist Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00
.abacus.donotdelete Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00
.gitignore Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00
LICENSE Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00
README.md Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00
build_debian.sh Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00
build_linux.sh Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00
build_windows.bat Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00
csv_processor.py Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00
csv_processor_gui.py Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00
requirements.txt Initial commit: CSV Processor 2026-01-16 11:23:43 +00:00

README.md

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-gui oder ü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:

  1. Quelldatei auswählen (CSV oder Excel)
  2. CSV-Einstellungen konfigurieren (Encoding, Delimiter)
  3. Optional: Mapping-Datei für Spaltennamen laden
  4. Leere Zeilen/Spalten entfernen
  5. Spalten auswählen
  6. Optional: Sortierung, Kopf-/Fußzeile
  7. Ausgabeformat wählen und speichern
  8. Optional: Als Voreinstellung speichern

GUI-Version

python csv_processor_gui.py
  1. Datei laden: Klick auf [Durchsuchen] und Datei auswählen
  2. Einstellungen: Checkboxen für Kopfzeile, leere Zeilen/Spalten
  3. Spalten: Im Bereich "Spaltenauswahl" gewünschte Spalten markieren
  4. Vorschau: Optional [Vorschau] klicken
  5. 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