Skript zum Verkleinern von FotosEntwicklung & Anpassung

Ein Python-Skript, das einen ganzen Ordner mit Fotos für Ihre Website, Ihren Shop oder Ihre E-Mails verkleinert und komprimiert

Meist in 15 Minuten fertigÜberarbeitungen inklusiveQualitätsprüfung
Pakete
ZahlungsschutzMehr dazu
  • Überarbeitungen im Rahmen des Pakets sind kostenlos.
  • Reagieren Sie nicht innerhalb von 3 Tagen nach der Lieferung, gilt die Arbeit automatisch als abgenommen.

Das Geld wird bei der Zahlung reserviert und erst freigegeben, wenn Sie die Arbeit abnehmen.

Ein Python-Skript, das einen ganzen Ordner mit Fotos für Ihre Website, Ihren Shop oder Ihre E-Mails verkleinert und komprimiert

Beispielergebnis

Beispiel für das Standard-Paket

Monatliche Verkaufsdateien von 9 Läden in einem Excel-Bericht zusammenführen

So wird es gestartet

python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO  Ordner: sales/2026-10, 9 Dateien gefunden
2026-11-02 09:14:03 INFO  shop-01.csv: 1.284 Zeilen
2026-11-02 09:14:04 INFO  shop-02.xlsx: 967 Zeilen
2026-11-02 09:14:04 WARN  shop-07.csv: 3 Zeilen ohne Preis übersprungen (Zeilen 88, 412, 913)
2026-11-02 09:14:05 INFO  Fertig: 10.412 Zeilen -> report-2026-10.xlsx (Tabellenblätter „Verkäufe“ und „Summen“)

Einstellungen statt Code

Die Spaltennamen jedes Ladens stehen in settings.ini, daher ist ein neuer Laden oder eine umbenannte Spalte nur eine Zeile dort:

[columns]
date = Datum, Verkaufsdatum, Tag
product = Artikel, Produkt, Bezeichnung
quantity = Menge, Anzahl, Stk.
price = Preis, Einzelpreis

Ein Teil des Codes

def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
    """Liest die Datei eines Ladens ein und gibt ihr die Spaltennamen des Berichts."""
    table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
    renamed = {}
    for name, variants in columns.items():
        found = next((c for c in table.columns if c.strip() in variants), None)
        if found is None:
            raise ReportError(f"{path.name}: keine Spalte für '{name}' (gesucht wurde nach {', '.join(variants)})")
        renamed[found] = name
    table = table.rename(columns=renamed)[list(columns)]
    table["shop"] = path.stem
    return table

Dateien: ein ZIP-Archiv mit merge_sales.py (310 Zeilen), settings.ini, requirements.txt und einer README dazu, wie man Python installiert, das Skript startet und was jede Meldung im Protokoll bedeutet. Der Kunde startet es auf seinem eigenen Computer.

Kunde: eine kleine Kette von 9 Schreibwarenläden; jeder Laden schickt seine Monatsverkäufe als CSV- oder Excel-Datei, mit leicht unterschiedlichen Spaltennamen. Aufgabe: ein Skript, das jede Datei in einem Ordner einliest, die Spalten in eine einheitliche Form bringt und einen einzigen Excel-Bericht mit allen Verkäufen und einem Tabellenblatt mit Summen pro Laden schreibt.

Kunde und alle Angaben sind erfunden.

Über diese Leistung

Fotos direkt aus Kamera oder Smartphone haben oft 5–10 MB pro Stück: zu schwer für eine Produktseite, eine Website-Galerie oder eine E-Mail. Dieses Python-Skript geht einen Ordner durch und speichert eine kleinere Kopie jedes Bildes: an die festgelegte Breite oder Höhe angepasst, ohne Verzerrung, mit der gewählten Qualität komprimiert, als JPEG oder PNG. Ab Standard kann es mehrere Größen auf einmal erzeugen und versteckte Angaben entfernen, die Fotos mit sich tragen, etwa die Kamera und den Aufnahmeort. Ihre Originale bleiben unangetastet, und die Ergebnisse landen in einem separaten Ordner. Schicken Sie uns die benötigten Größen und zwei oder drei Beispielfotos. Sie führen das Skript selbst auf Ihrem Computer aus. Es verkleinert und komprimiert; es retuschiert nicht, stellt nicht frei und korrigiert keine Farben.

Was enthalten ist

  • Das erhalten SieEin ZIP-Archiv mit dem Python-Skript, einer README mit Schritt-für-Schritt-Anleitung und ab Standard einer Einstellungsdatei mit Ihren Größen und der Qualität; der Code wird auch auf der Bestellseite angezeigt.
  • Keine VerzerrungProportionen bleiben erhalten; Zuschnitt oder Rand nur auf Wunsch
  • Qualität nach Ihrer WahlLeichtere Dateien mit der Schärfe, die Ihnen genügt
  • Originale bleiben erhaltenKopien landen in einem separaten Ordner
  • Versteckte Angaben entferntAb Standard auf Wunsch ohne Kamera- und Standortdaten
  • Lesbarer CodeMit Kommentaren, eine Größe lässt sich später leicht ändern

So funktioniert es

  1. 1
    GrößenSie nennen die Größen und schicken ein paar Beispielfotos
  2. 2
    CodeWir schreiben das Skript und die Anleitung zum Ausführen
  3. 3
    AusprobierenSie führen es mit einem Ordner aus und sehen sich die Kopien an
  4. 4
    ÜberarbeitungenSie wünschen Überarbeitungen im Rahmen Ihres Pakets und schicken etwaige Fehlermeldungen

Was wir von Ihnen brauchen

Die benötigten Größen in Pixeln (zum Beispiel 1600 px breit für die Website und 400x400 für Vorschaubilder) oder die Größen, die Ihre Shopplattform verlangt, ob bei abweichendem Format zugeschnitten oder ein Rand ergänzt werden soll, das Dateiformat und eine eventuelle Größengrenze, etwa unter 300 KB. Zwei oder drei Ihrer Fotos als Beispiele, ungefähr wie viele Fotos es sind und ob sie in Unterordnern liegen. Ihr System: Windows, macOS oder Linux.

Wir fragen Sie:

  • Wofür sind die Fotos?
  • Welche Größen brauchen Sie?
  • Gibt es Grenzen für Dateigröße oder Format?
  • Wo wird es ausgeführt?

Pakete vergleichen

PaketeBasisEine Größe15 €StandardGrößen mit Einstellungen30 €PremiumBildtool60 €
Lieferzeit1 Tag2 Tage3 Tage
Überarbeitungen123
Codebis zu 150 Zeilenbis zu 400 Zeilenbis zu 1.000 Zeilen
Code-Dateien1bis zu 3bis zu 8
EinstellungsdateiNeinJaJa
Verständliche Fehlermeldungen und ein ProtokollNeinJaJa
Startoptionen und eine Anleitung für den zeitgesteuerten StartNeinNeinJa
Anleitung zu Installation und Start (README)JaJaJa
SprachePythonPythonPython
Bestellen BasisBestellen StandardBestellen Premium

Zahlungsschutz

Sie bezahlen bei der Bestellung, aber das Geld wird nur für abgenommene Arbeit freigegeben.

  • FestpreisDer Paketpreis ändert sich nach der Zahlung nicht mehr.
  • Das Geld wird reserviertBei der Zahlung wird der Betrag nur reserviert. Freigegeben wird er erst, wenn Sie die Arbeit abnehmen.
  • Vor der Lieferung geprüftJedes Ergebnis durchläuft eine Qualitätsprüfung, bevor es Sie erreicht, und Sie sehen es auf der Bestellseite, bevor Sie es abnehmen.
  • Kostenlose ÜberarbeitungenFordern Sie Überarbeitungen im Rahmen Ihres Briefings so oft an, wie das Paket es erlaubt.
  • Abnahme nach 3 TagenWenn Sie die Arbeit innerhalb von 3 Tagen nach der Lieferung weder abnehmen noch eine Überarbeitung anfordern, gilt sie automatisch als abgenommen. Schreiben Sie nach der Lieferung im Bestell-Chat, wartet die Bestellung; sobald wir antworten, können wir die 3 Tage neu starten und teilen das im Chat mit.
  • Neuanfertigung oder volle RückerstattungWenn das Ergebnis nicht Ihrem Briefing entspricht und die Überarbeitungen das nicht behoben haben oder die Arbeit mehr als doppelt so lange dauert wie die Frist, schreiben Sie im Bestell-Chat: Wir erstellen die Arbeit neu oder erstatten die Zahlung vollständig.
So funktioniert es →

Fragen und Antworten

Welche Formate kann es lesen?

JPEG, PNG, GIF, BMP, TIFF und WebP. HEIC-Fotos von iPhones und RAW-Dateien von Kameras brauchen eine zusätzliche Bibliothek; sagen Sie uns, wenn Sie solche haben, und wir sagen Ihnen, ob sie in Ihr Paket passen.

Verlieren die Fotos an Qualität?

Etwas, wie bei jeder Komprimierung, aber bei üblichen Einstellungen ist es auf dem Bildschirm kaum zu sehen. Sie legen die Qualität in den Einstellungen fest und können an Beispielfotos ein paar Werte ausprobieren.

Kann es auch WebP erzeugen?

Ja, es kann im selben Paket WebP neben JPEG speichern. Wenn WebP das Hauptziel ist, sehen Sie sich unsere Leistung zur Umwandlung von Bildern in WebP an.

Verkleinern Sie meine Fotos für mich?

Nein. Sie führen das Skript auf Ihrem Computer aus, Ihre Fotos bleiben also bei Ihnen. Ein paar Beispiele sind alles, was wir brauchen.

Keine Antwort gefunden?

Pakete