Files

Archivierte Fotograf.de Tools

Dieses Verzeichnis (ARCHIVE_vor_migration/Fotograf.de/) enthält zwei archivierte Tools, die zuvor für die Interaktion mit app.fotograf.de und die Erstellung von Google Docs Teilnehmerlisten verwendet wurden.

Beide Tools sind hier isoliert und dokumentiert, um eine spätere Wiederverwendung und Überarbeitung zu erleichtern.

1. Fotograf.de Scraper

Verzeichnis: ./scraper/

Zweck: Ein Python-basiertes Skript, das die Website app.fotograf.de automatisiert besucht, sich anmeldet und in zwei Modi Daten extrahiert:

  1. E-Mail-Liste erstellen: Sammelt Kontaktdaten (Käufer, E-Mail, Kindnamen, Login-URLs) und speichert sie in einer CSV-Datei (supermailer_fertige_liste.csv).
  2. Statistik auswerten: Erstellt eine Statistik-CSV-Datei (job_statistik.csv) über Album-Käufe.

Benötigte Dateien:

  • ./scraper/scrape_fotograf.py: Das Hauptskript mit der gesamten Logik.
  • ./scraper/fotograf_credentials.json: (Manuell zu erstellen!) Diese Datei muss Ihre Login-Daten für app.fotograf.de im folgenden JSON-Format enthalten:
    {
      "PROFILNAME": {
        "username": "IHR_BENUTZERNAME",
        "password": "IHR_PASSWORT"
      }
    }
    

Ausführung über Docker: Das Tool wird in einer Docker-Umgebung ausgeführt, die Google Chrome und Selenium bereitstellt.

  1. Image bauen (einmalig oder bei Änderungen an Dockerfile/requirements.txt): Navigieren Sie zum Root-Verzeichnis des Hauptprojekts (/app) und verwenden Sie das dortige Dockerfile.brancheneinstufung:

    cd /app
    docker build -f Dockerfile.brancheneinstufung -t fotograf-scraper .
    

    (Hinweis: Das Dockerfile.brancheneinstufung verwendet die globale requirements.txt im Root-Verzeichnis, welche selenium enthält.)

  2. Container starten und Skript ausführen: Vom Root-Verzeichnis des Hauptprojekts (/app) aus:

    cd /app
    docker run -it --rm -v "$(pwd):/app" fotograf-scraper python3 /app/ARCHIVE_vor_migration/Fotograf.de/scraper/scrape_fotograf.py
    

    Das Skript fragt Sie interaktiv nach dem gewünschten Modus und der URL des Fotoauftrags.

2. Google Docs Teilnehmerlisten-Generator

Verzeichnis: ./list_generator/

Zweck: Ein Python-Skript, das CSV-Dateien einliest und daraus formatierte Teilnehmerlisten als neues Google Docs-Dokument im Google Drive erstellt. Das Tool ist interaktiv und fragt beim Start Details wie den Namen der Veranstaltung, den Einrichtungstyp und den Ausgabemodus ab.

Benötigte Dateien:

  • ./list_generator/list_generator.py: Das Hauptskript mit der gesamten Logik.
  • ./list_generator/Namensliste.csv: (Manuell zu erstellen!) Eine CSV-Datei mit den Anmeldungen für Kindergärten/Schulen.
  • ./list_generator/familien.csv: (Manuell zu erstellen!) Eine CSV-Datei mit den Anmeldungen für Familien-Shootings.
  • ./list_generator/service_account.json: (Manuell zu erstellen!) Die JSON-Datei mit den Anmeldeinformationen für den Google Cloud Service Account. Diese Datei wird benötigt, um auf Google Docs und Google Drive zuzugreifen.

Ausführung: Navigieren Sie in das Verzeichnis des Tools und starten Sie es mit Python:

cd /app/ARCHIVE_vor_migration/Fotograf.de/list_generator/
python3 list_generator.py

(Stellen Sie sicher, dass alle benötigten Python-Bibliotheken wie google-api-python-client etc. in Ihrer Umgebung installiert sind. Diese sind vermutlich über die globale requirements.txt im Root-Verzeichnis des Hauptprojekts verfügbar.)

Wichtiger Hinweis zu Credentials (Sicherheit)

Die Tools verwenden fotograf_credentials.json und service_account.json zur Authentifizierung. Diese Dateien enthalten sensitive Zugangsdaten und wurden bewusst aus der Git-Historie entfernt und nicht im Repository abgelegt.

Für die Wiederinbetriebnahme müssen diese Dateien manuell im jeweiligen Tool-Verzeichnis (./scraper/ bzw. ./list_generator/) erstellt und mit den korrekten Zugangsdaten befüllt werden.

Priorität für die Überarbeitung: Bei einer zukünftigen Überarbeitung dieser Tools ist es zwingend erforderlich, die Handhabung der Credentials zu verbessern. Statt fester JSON-Dateien sollten Umgebungsvariablen (.env) oder ein sicherer Secret Management Service verwendet werden, um die Sicherheitsstandards zu erhöhen.