# 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: ```json { "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`: ```bash 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: ```bash 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: ```bash 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.