refactor: [30388f42] Archivierung der "Fotograf.de"-Projekte
- Identifiziert und isoliert die Skripte für den "Fotograf.de"-Scraper und den Google Docs-Listengenerator. - Verschiebt die zugehörigen Dateien in ein neues Archivverzeichnis (), um sie von den aktiven Projekten zu trennen. - Fügt -Dateien mit Dokumentation zur Ausführung und den Abhängigkeiten für jedes der archivierten Projekte hinzu.
This commit is contained in:
@@ -1 +1 @@
|
||||
{"task_id": "30388f42-8544-8088-bc48-e59e9b973e91", "token": "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", "readme_path": null, "session_start_time": "2026-03-05T20:44:22.776793"}
|
||||
{"task_id": "30388f42-8544-8088-bc48-e59e9b973e91", "token": "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", "readme_path": null, "session_start_time": "2026-03-06T08:24:48.391690"}
|
||||
22
ARCHIVE_vor_migration/Fotograf.de/list_generator/README.md
Normal file
22
ARCHIVE_vor_migration/Fotograf.de/list_generator/README.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# Google Docs Teilnehmerlisten-Generator (Archiviert)
|
||||
|
||||
Dieses Verzeichnis enthält die archivierten Dateien für den "Google Docs Teilnehmerlisten-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 ab.
|
||||
|
||||
**Zugehörige Dateien in diesem Ordner:**
|
||||
* `list_generator.py`: Das Hauptskript mit der gesamten Logik.
|
||||
|
||||
**Manuell zu erstellende Dateien:**
|
||||
Diese Dateien werden vom Skript als Input benötigt und müssen im selben Verzeichnis liegen:
|
||||
* `Namensliste.csv`: Eine CSV-Datei mit den Anmeldungen für Kindergärten/Schulen.
|
||||
* `familien.csv`: Eine CSV-Datei mit den Anmeldungen für Familien-Shootings.
|
||||
* `service_account.json`: Die JSON-Datei mit den Anmeldeinformationen für den Google Cloud Service Account, der die Berechtigung hat, auf Google Docs und Google Drive zuzugreifen.
|
||||
|
||||
**Hinweis zur Ausführung:**
|
||||
Das Skript wird direkt mit Python ausgeführt, z.B.:
|
||||
```bash
|
||||
python3 list_generator.py
|
||||
```
|
||||
Stellen Sie sicher, dass alle benötigten Bibliotheken (wie `google-api-python-client`, `google-auth-httplib2`, `google-auth-oauthlib`) in Ihrer Python-Umgebung installiert sind. Diese sind vermutlich in der globalen `requirements.txt` im Root-Verzeichnis des Projekts enthalten.
|
||||
32
ARCHIVE_vor_migration/Fotograf.de/scraper/README.md
Normal file
32
ARCHIVE_vor_migration/Fotograf.de/scraper/README.md
Normal file
@@ -0,0 +1,32 @@
|
||||
# Fotograf.de Scraper (Archiviert)
|
||||
|
||||
Dieses Verzeichnis enthält die archivierten Dateien für den "Fotograf.de Scraper".
|
||||
|
||||
**Zweck:**
|
||||
Ein Python-basiertes Tool, das die Website `app.fotograf.de` automatisiert besucht, sich anmeldet und in zwei Modi Daten extrahiert:
|
||||
1. **E-Mail-Liste erstellen:** Sammelt Kontaktdaten und speichert sie in einer CSV-Datei (`supermailer_fertige_liste.csv`).
|
||||
2. **Statistik auswerten:** Erstellt eine Statistik-CSV-Datei (`job_statistik.csv`).
|
||||
|
||||
**Zugehörige Dateien in diesem Ordner:**
|
||||
* `scrape_fotograf.py`: Das Hauptskript mit der gesamten Logik.
|
||||
|
||||
**Manuell zu erstellende Dateien:**
|
||||
* `fotograf_credentials.json`: Diese Datei wird vom Skript benötigt und muss die Login-Daten für `app.fotograf.de` im folgenden JSON-Format enthalten:
|
||||
```json
|
||||
{
|
||||
"PROFILNAME": {
|
||||
"username": "IHR_BENUTZERNAME",
|
||||
"password": "IHR_PASSWORT"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Externe Abhängigkeiten (befinden sich im Hauptverzeichnis des Projekts):**
|
||||
* **Dockerfile:** `Dockerfile.brancheneinstufung` wurde wahrscheinlich verwendet, um ein Docker-Image für dieses Tool zu erstellen. Es installiert Google Chrome und die notwendigen Python-Pakete.
|
||||
* **Python-Abhängigkeiten:** Die globale `requirements.txt` im Root-Verzeichnis enthält `selenium` und andere benötigte Bibliotheken.
|
||||
|
||||
**Beispielhafter `docker run`-Befehl:**
|
||||
1. Bauen Sie das Image (nur einmalig): `docker build -f Dockerfile.brancheneinstufung -t fotograf-scraper .`
|
||||
2. Führen Sie den Container aus: `docker run -it --rm -v "$(pwd):/app" fotograf-scraper python3 /app/ARCHIVE_vor_migration/Fotograf.de/scraper/scrape_fotograf.py`
|
||||
|
||||
(Pfade müssen ggf. angepasst werden, je nachdem, von wo der Befehl ausgeführt wird.)
|
||||
@@ -1,13 +0,0 @@
|
||||
{
|
||||
"type": "service_account",
|
||||
"project_id": "kalender-400315",
|
||||
"private_key_id": "e18c9ed28d358b7c1dd33767ae40d76646d09ee5",
|
||||
"private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCon4+bfr+DL88y\n9kuyEzB0fu20N8gfz/8VPGqsLkY3fo0mklriXYS0Ofw8nlhXKUYQd/7HF1LQDbb0\n+4BZy5W6HjAzq4BxQM9X8q72oFqU20vtvVE3PGCFZ2yek2KaamMz1rV3tg0QJHBp\nD43tDXfhqsFcQtzQ5dLS06jagpw4oFQq37nTpaAHGfarA2gIz0EiKSFIusyqyMbY\nzit1wSJvC8yS14ucIa/xEthIP5IGln2nu8OKeil2X9Wlg5+y2gnkIwAaiFuJE6u6\nyyRnljK97wjxUoeq7JGj75TVvhW8/nPEJJGVt9Df2RG/mcsCGPCw1M+BK98wnLQM\nqf6DASGvAgMBAAECggEABnwwgTn0Mp7tmJepXJ1pUSmqibJVg4ez10S+E4YqFCtN\nUWzyit8u4eGTBl/OpPeE5tA+n7iRakgEv9JGYu22AfT0RKB1baWg89B1Ey4inbP7\nbRbJX1b2nVrXbhfcBHVQAGfjDcoWIYdNPXUoL7RDZo3zJtG5fV1BaPNT/KdmS7Uq\nzShY8QNTImwDvczzGo1UzZZYz+Wh1WafzvUXJrxZUrwLgZEUAHjwC46WyCVlKlVK\nWKuc1j/gpSm6vp5QtQwIEyWHIXdfxDN61Qizt3ujOSvEZwrt70/kEl9zqfILK2S4\nDuVXUfdg7RLSfoDll8RckVd6MvvKpAs2gQHN99vymQKBgQDiaei7wvTeoEh43OR9\nmtz9uRyTtGx4xfQGQZ62Tb5z6RtU2N+uEuT+bbQ3svP5yMfIqVV0NxZjUkA6A4H0\ndQwaKYcfLGXPDK3XOERh1R12MFcHmN3GXQ3htqPwHssv1XWkWtzF71DfO2prkQhQ\nsJMHQeLSdrMhJuBDFkVxzt+XtwKBgQC+qGvV29k3CsiJdA/kvdXj2Av0MCqaesyb\nDZ95pJUitSFzCwKf4TNL8lFwnp8aH2SAFMyjVfU6lW8x97kd7LrHVoEJZ8LZUFfp\ne2nJtr7zAzWhSEXvVyFTultu8f0yCRAaQSvxtNrxzK2qKSU/i5LG4UEn5/2UXIc3\nGP7vKAcVyQKBgFtY0X4XfQXo8vRYYpNOjMSND7uD+pOLghWYGfmBSkqnjNBho3Uu\nyFbiWehy+b4YRIpvzztREmZGBAWj7qV7J8PSZ2KrXfP4MJb5a5VxDy7k9+fnw+pJ\nFtWvA1tYgS+uVoVV52awVBeMeDYn0IwFgXxXF7VEEKdacPaAIMp25XznAoGAVwlP\n4Rsx+BymG4muT8ARyqewHVN3v3nbudToPoHRyzxg/sHB+va1kjAW2ZCwFR7LpGTa\nXp45Cvt4/ZiXG4AcbC+jTIXfv5Eb8Ox0CK+yUAHhE7WIp5BhGHX0k5tI+PSGM1YZ\nF4h2gvfrN8j8xhuTb9MZCXywmG/9EjwI9WiSg3ECgYEA2EX+2xAc3zpDaTdb7h4n\nBo6lzYU2JYSeNR/fBUMqZGkBEJ/NUpwihY8kvkuxr3CvfDEEjGj2xhH8qYfiO4Pp\nUVh/dPgjq4XAibXWtVsXpploCPqYFj3lBwqFbDHPkE0HG/oXxYHRFgVss8ZOdOp6\nteiDU5B/5caV7jNk+nluzMg=\n-----END PRIVATE KEY-----\n",
|
||||
"client_email": "brancheneinstufung@kalender-400315.iam.gserviceaccount.com",
|
||||
"client_id": "114291880309376322726",
|
||||
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
|
||||
"token_uri": "https://oauth2.googleapis.com/token",
|
||||
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
|
||||
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/brancheneinstufung%40kalender-400315.iam.gserviceaccount.com",
|
||||
"universe_domain": "googleapis.com"
|
||||
}
|
||||
Reference in New Issue
Block a user