Prüfung von Status und WeiterleitungenEntwicklung & Anpassung

Ein Python-Skript, das eine Liste von Adressen auf Statuscodes und Weiterleitungen prüft, Schritt für Schritt

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 eine Liste von Adressen auf Statuscodes und Weiterleitungen prüft, Schritt für Schritt

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

Nach einem Website-Umzug, einer Änderung der Adressen oder der Umstellung auf https müssen alte Links zu den richtigen neuen Seiten führen, und Hunderte davon im Browser zu prüfen, dauert lange. Dieses Python-Skript liest Ihre Adressliste (CSV, Excel oder Text) und prüft jede Adresse: den Statuscode (200, 301, 404, 500), die Zieladresse, bei der sie endet, und ab Standard jeden Schritt der Weiterleitungskette. Wenn Sie eine Spalte mit der Adresse ergänzen, zu der jede führen soll, markiert es jede Abweichung. Premium markiert Schleifen und Ketten, die länger sind als erlaubt. Es liest nur öffentlich zugängliche Seiten, in einem höflichen Tempo, das Sie festlegen, und meldet sich nie an. Sie führen es auf Ihrem Computer aus und korrigieren die Weiterleitungen selbst in den Einstellungen Ihrer Website; es meldet nur, was es sieht.

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 Tempo und Zeitlimits; der Code wird auch auf der Bestellseite angezeigt.
  • Status jeder Adresse200, 301, 302, 404, 500 und die übrigen
  • Jeder WeiterleitungsschrittAb Standard die vollständige Kette bis zur Zielseite
  • Abgleich mit dem erwarteten ZielAbweichungen markiert, wenn Sie die Adresse angeben, die erreicht werden soll
  • Höfliches TempoEine Pause zwischen Anfragen, die Sie festlegen
  • Lesbarer CodeMit Kommentaren, eine Spalte lässt sich später leicht ergänzen

So funktioniert es

  1. 1
    AufgabeSie schicken einen Ausschnitt Ihrer Adressliste
  2. 2
    CodeWir schreiben das Skript und die Anleitung zum Ausführen
  3. 3
    AusprobierenSie starten es mit einem Teil der Liste, dann mit der ganzen
  4. 4
    ÜberarbeitungenSie wünschen Überarbeitungen im Rahmen Ihres Pakets und schicken etwaige Fehlermeldungen

Was wir von Ihnen brauchen

Ein Ausschnitt Ihrer Liste: 10–20 Adressen als CSV, Excel oder Text und, falls vorhanden, die Spalte mit der Adresse, zu der jede führen soll (eine Weiterleitungstabelle aus Ihrem Umzug). Ungefähr wie viele Adressen es insgesamt sind und ob sie auf Ihrer Website oder mehreren Websites liegen. Wie schnell es vorgehen darf, welcher Bericht gewünscht ist (CSV oder Excel) und Ihr System: Windows, macOS oder Linux.

Wir fragen Sie:

  • Wofür ist die Liste?
  • Haben Sie die Adressen, zu denen sie führen sollen?
  • Welchen Bericht brauchen Sie?
  • Wo wird es ausgeführt?

Pakete vergleichen

PaketeBasisStatus einer Liste15 €StandardWeiterleitungsprüfung mit Einstellungen30 €PremiumWeiterleitungstool60 €
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

Kann es einen Website-Umzug prüfen?

Ja, das ist sein Haupteinsatz. Geben Sie ihm die alten Adressen und die neue Adresse, die jede erreichen soll, und es markiert jede, die woanders endet, einen Fehler liefert oder zu viele Schritte braucht.

Richtet es die Weiterleitungen für mich ein?

Nein. Es prüft nur. Weiterleitungen werden in der Plattform Ihrer Website, einem Plugin oder den Servereinstellungen eingerichtet, und diese Änderungen nehmen Sie selbst vor.

Warum zeigt eine Seite 403, obwohl sie in meinem Browser funktioniert?

Manche Websites lehnen Anfragen ab, die nicht von einem Browser kommen. Solche Ergebnisse werden markiert, damit Sie sie von Hand prüfen; das Skript versucht nicht, die Sperre zu umgehen.

Wie viele Adressen kann es prüfen?

So viele, wie Sie haben; das Tempo bestimmt die Dauer. Bei einer Adresse pro Sekunde dauern 3.600 Adressen etwa eine Stunde.

Keine Antwort gefunden?

Pakete