Commit Graph

218 Commits

Author SHA1 Message Date
df23fbd9e5 bugfix 2025-04-10 10:28:27 +00:00
095715435c bugfix 2025-04-10 09:52:58 +00:00
e18bc08d4f bugfix 2025-04-10 09:39:46 +00:00
5bfeaef4a2 1.5.3: Optimierung Batch-Modus und Alignment-Demo Integration für robustes Update
- Anpassbare Batchgröße (Config.BATCH_SIZE, z. B. 10 Zeilen) zur Bündelung von ChatGPT-Anfragen.
- Aggregierte Prompts werden pro Batch erstellt und zeilenweise ausgewertet, mit erweitertem Logging.
- Ergebnisse der Aggregation werden als Paket verarbeitet und Google Sheets effizient aktualisiert.
- Alignment-Demo als eigenständiger Funktionsbaustein (alignment_demo_full) wiederhergestellt.
2025-04-10 09:31:17 +00:00
c4e9fc3810 bugfix 2025-04-10 06:46:58 +00:00
fbf15876dc bugfix 2025-04-10 06:42:46 +00:00
15cdf0af63 bugfix 2025-04-10 06:25:21 +00:00
1972b7024b bugfix 2025-04-10 06:13:53 +00:00
e8b18a40d5 1.5.2: Ergänzung heuristischer E-Mail-Generierung und Spaltenanpassung im Contacts-Blatt
- Neue Funktion get_email_address zur Erzeugung der E-Mail-Adresse im Format vorname.nachname@domain.tld
- Anpassung von process_contact_research: E-Mail-Adresse in Spalte I eingetragen, LinkedIn-Link und Timestamp entsprechend verschoben
- Integration der E-Mail-Generierung in den bestehenden Kontaktverarbeitungs-Workflow, bestehende Funktionen weitgehend unverändert
2025-04-10 06:11:28 +00:00
b4f5974877 bugfix 2025-04-10 05:53:53 +00:00
78cc6760e9 1.5.1: Integrierter hybrider Geschlechtsdetektor & aktualisierte Kontakte-Spalten
- Umstellung der Geschlechtsbestimmung: Zuerst gender-guesser, Fallback zu Genderize API
- Geschlecht wird jetzt in Spalte D gespeichert (alle folgenden Felder rutschen um eine Spalte nach rechts)
- Aktualisierte Header und Kontaktzeilen im Contacts-Blatt, inklusive API-Key aus "genderize_API_Key.txt"
- Anpassung der Contact Research-Funktion zur Verarbeitung der geänderten Spalten
2025-04-10 05:49:56 +00:00
6872664601 bugfix 2025-04-09 17:20:40 +00:00
423a7a0869 bugfix 2025-04-09 17:14:57 +00:00
e2ca4675d9 bugfix 2025-04-09 17:01:48 +00:00
d4267a4bdc Version 1.5.0 – Verbesserung der Website-Detail-Extraktion und Kontaktsuche
- **Website-Extraktion verbessert:**
  - Fix: Ausgabe in Spalte AR (Website Rohtext) und AS (Website Zusammenfassung) wird nun zwingend in jedem Datensatz geschrieben – dabei wird nun *unabhängig* vom Vorhandensein eines "x" in Spalte A gearbeitet.
  - Erweiterte Debug-Ausgaben: Zusätzliche Log-Meldungen protokollieren nun explizit, welchen Text (insb. die ersten 100 Zeichen) der Website extrahiert wurde und welcher Zusammenfassungstext generiert wird. Dies erleichtert die Fehlersuche und bestätigt, was in Spalte AR/AS geschrieben wird.
  - User-Agent-Header und optionale SSL-Überprüfung wurden in `get_website_raw()` implementiert, um Blockierungen zu vermeiden und Fehler besser zu diagnostizieren.

- **Kontaktsuche (Modus 6) optimiert:**
  - Überarbeitet: Die Suche nutzt nun explizit die CRM-Kurzform (Spalte C) als Filter, sodass nur Ergebnisse berücksichtigt werden, bei denen diese als Teil des Titels enthalten ist.
  - Es wird in ein separates Arbeitsblatt "Contacts" geschrieben und die gefundenen Kontakte werden mit detaillierten Debug-Ausgaben protokolliert – dabei wird außerdem die Anzahl der Treffer pro Position (Serviceleiter, IT-Leiter, Geschäftsführer, Disponent) im Hauptblatt aktualisiert.
  - Es wird nun darauf geachtet, dass der Suchlauf ohne Überschreiben bereits vorhandener Zeitstempel (ab Zeile AM7) durchgeführt wird.

- **Allgemeine Verbesserungen und Debugging:**
  - Detaillierte Log-Ausgaben in allen kritischen Funktionen (Web-Extraktion, LinkedIn-Suche, Branchenabgleich) wurden erweitert, um Nachvollziehbarkeit zu gewährleisten.
  - Debug-Ausgaben wurden verbessert, um exakte Abfragen, Ergebnisse und die daraus resultierenden Schreibvorgänge in den jeweiligen Spalten (z. B. für die Branchenbewertung in den Spalten W–Y) zu protokollieren.
  - Anpassungen im Code haben sicher gestellt, dass keine wichtigen Funktionen entfernt wurden – Fokus lag ausschließlich auf den von Dir beanstandeten Bereichen.

Dieser Commit stellt sicher, dass die Website-Daten korrekt in den vorgesehenen Spalten abgelegt werden und die Kontaktsuche präziser und robuster arbeitet.
2025-04-09 13:28:40 +00:00
c488b66898 Bigfix 2025-04-09 13:03:42 +00:00
659a3b587e bugfix 2025-04-09 12:25:21 +00:00
ce7b830de2 v1.4.9: Verbesserte Wikipedia-Konsistenzprüfung und erweiterte Log-Ausgaben für Website-Scraping
- Implementiert die Funktion is_valid_company_article(), die Wikipedia-Kategorien auf 
  das Stichwort "unternehmen" (und Synonyme) überprüft.
- In evaluate_branche_chatgpt() wird nun geprüft, ob Wiki-Kategorien "unternehmen" enthalten;
  falls nicht, wird die Website-Zusammenfassung als Fallback genutzt.
- Debug-Ausgaben im Website-Scraping-Bereich (_process_single_row) wurden erweitert,
  um den extrahierten Rohtext (erste 100 Zeichen) aus Spalte AR und die Zusammenfassung in AS zu protokollieren.
- Dies soll helfen, falsche Wikipedia-Artikel zu erkennen und den Fallback-Mechanismus zu verbessern.
2025-04-09 12:07:18 +00:00
29193b1888 debug 2025-04-09 10:00:03 +00:00
a2341e6c1d bugfix 2025-04-09 09:45:54 +00:00
8e16f0bd0f bugfix 2025-04-09 09:39:28 +00:00
229b4c4ff7 bugfix 2025-04-09 09:28:52 +00:00
6919f3454c bugfix 2025-04-09 09:19:40 +00:00
55666b0603 bugfix 2025-04-09 09:14:50 +00:00
94694bc676 bugfix 2025-04-09 09:05:21 +00:00
e9833d927b bugfix 2025-04-09 08:39:26 +00:00
ee96102424 bugfix 2025-04-09 08:26:50 +00:00
66a9b82d79 bugfix 2025-04-09 08:21:59 +00:00
880373d248 bugfix 2025-04-09 08:15:24 +00:00
cce3e93ccb v1.4.7.1 Verbesserter Website-Scraper: User-Agent gesetzt und SSL-Verifikation optional
- In get_website_raw() wurde ein User-Agent-Header hinzugefügt, um Blockaden zu vermeiden.
- SSL-Zertifikatüberprüfung kann jetzt optional durch den Parameter verify_cert deaktiviert werden (Standard: False).
- Zusätzliche Debug-Ausgaben protokollieren den Statuscode und erste 100 Zeichen des extrahierten Textes.
- Damit wird sichergestellt, dass beim Fehlen eines Wikipedia-Eintrags der Website-Fallback besser analysiert werden kann.
2025-04-09 07:46:03 +00:00
7c059884f1 bugfix 2025-04-09 07:31:23 +00:00
8e671d2bf0 bugfix 2025-04-09 07:21:20 +00:00
9dfff201d6 v1.4.7 Fallback Website-Details: Mehr Logging & Fallback in Branchenbewertung
- In evaluate_branche_chatgpt() wird geprüft, ob sowohl Wiki- als auch externe Beschreibung 'k.A.' sind.
- Falls ja, wird der Website-Zusammenfassungstext als Fallback zur Branchenbewertung genutzt.
- Zusätzliche debug_print()-Ausgaben wurden eingefügt, um anzuzeigen, welche Informationen für die Entscheidungsfindung herangezogen wurden.
- Nach der ChatGPT-Antwort wird das Endergebnis ebenfalls geloggt.
2025-04-09 07:04:45 +00:00
1202b2c2f4 v1.4.6 Erweiterte Modi: Neuer Modus 23 Website-Detail Extraction + SERP Lookup
- Neuer Modus 23 implementiert: Website Detail Extraction für Zeilen mit "x" in Spalte A.
- scrape_website_details() extrahiert Seitentitel, Meta-Description und h1/h2/h3 aus der Startseite.
- SERP-API Website Lookup (Modus 22) integriert: Fehlt in Spalte D eine Website, wird diese ermittelt und normalisiert.
- Alignment Demo bleibt unverändert; neue Spalten AR (Website Rohtext) und AS (Website Zusammenfassung) werden beibehalten.
- Main-Funktion und DataProcessor entsprechend der neuen Betriebsmodi angepasst.
2025-04-09 06:36:35 +00:00
621cc67df7 URL normalisierung 2025-04-09 05:27:31 +00:00
6e768a092b bugfix 2025-04-08 19:39:55 +00:00
5d60447009 bugfix 2025-04-08 19:37:22 +00:00
d773ca4b40 bugfix 2025-04-08 19:31:38 +00:00
de78507bff Bugfix 2025-04-08 19:26:05 +00:00
d159bba3ef bugfix 2025-04-08 19:20:34 +00:00
824f521dc0 v1.4.6 Neue Website-Funktionen: SERP Lookup & Detail-Scraper integriert
- Modus 22: Neue Funktion 'serp_website_lookup' ermittelt per SERPAPI die Website, wenn CRM-Daten fehlen.
- Neue Funktion 'scrape_website_details' extrahiert Seitentitel, Meta-Description und h1/h2/h3-Überschriften.
- Beide Funktionen werden als Testmodule bereitgestellt und können in das Gesamtworkflow integriert werden.
- Main und Betriebsmodus-Menü wurden um die neuen Modi ergänzt.
- Alignment-Demo um neue Spalten erweitert
2025-04-08 18:24:46 +00:00
1d6c0c4b5a v1.4.6 Neue Betriebsmodi: Untermodi für Re-Evaluation, Website, SERP, ChatGPT implementiert
- Umstellung des Modus-Menüs auf ein neues Zahlensystem (1, 11, 21, 22, 31, 41, 51, 6)
- Modus 11: Re-Evaluation markierter Zeilen (ehemals Modus 2)
- Modus 21: Testmodus Website-Scraping (nur Website-Rohtext & Zusammenfassung)
- Modus 22: SERP-API basierter Website Lookup
- Modus 31: Vollständige ChatGPT-Auswertung
- Modus 41: Nur Wikipedia-Scraping
- Re-Evaluation-Untermodi (z. B. 11.1) können bei Bedarf später hinzugefügt werden
- Main-Funktion angepasst, um neue Modusauswahl zu ermöglichen
2025-04-08 17:58:02 +00:00
7b625e454f v1.4.5 Timestamp-Skip und URL-Scheme ergänzt, Website-Fallback bleibt, Alignment Demo vollständig be
- In _process_single_row() und process_verification_only() wird nun geprüft, ob in Spalte AO bereits ein Timestamp steht – in diesem Fall wird die Zeile übersprungen.
- In get_website_raw() wird vor dem Abruf geprüft, ob der URL mit "http" beginnt; andernfalls wird "https://" vorangestellt.
- Ansonsten bleibt die bisherige Logik (inklusive Website-Extraktion und -Zusammenfassung, Fallback in evaluate_branche_chatgpt und vollständige Alignment Demo) unverändert.
2025-04-08 14:43:32 +00:00
13ab783364 bugfix 2025-04-08 14:15:55 +00:00
7ddb2744a3 bugfix 2025-04-08 14:05:57 +00:00
acda922262 v1.4.4 Fallback über Website-Startseite integriert, Anpassung Branchenprompt, Zeilenabfrage in Modus
- Falls weder Wikipedia-Branche noch externe Branchenbeschreibung vorliegen, wird der Website-Inhalt (Startseite, Spalte D) ausgelesen.
- Eine neue Funktion `get_website_summary(url)` extrahiert den Text der Startseite (bis 1000 Zeichen) und übernimmt diesen als externe Information, falls nötig.
- Die Funktion `evaluate_branche_chatgpt()` wurde um einen Parameter `website_url` erweitert und prüft, ob bei fehlender Wikipedia-Branche und fehlender externer Beschreibung der Website-Text verwendet wird.
- In der Batch-Verarbeitung (Modus 51) wird der Website-URL aus Spalte D als fünfter Parameter übergeben.
- Die Alignment Demo bleibt ansonsten unverändert.
2025-04-08 13:51:14 +00:00
a918131b90 bugfix 2025-04-08 12:05:59 +00:00
2f4333e0e5 bugfix 2025-04-08 11:55:23 +00:00
f40d8d8a4f Update brancheneinstufung.py 2025-04-08 09:56:03 +00:00
2fa9aeed75 bugfix
Ergänzung der Fallunterscheidung:
Falls wiki_branche "k.A." ist, wird der Prompt so generiert, dass nur die Angaben aus CRM (Spalte G) und externe Branchenbeschreibung (Spalte H) verwendet werden. Andernfalls werden auch die Werte aus Wikipedia (Spalte N und Q) herangezogen.

Erhaltung der Fokus-Branchen:
Die Focus-Liste wird beibehalten, sodass die Entscheidungsfindung über den endgültigen Vorschlag weiterhin auch diese Branchen berücksichtigt.

Postprocessing:
Nach der Antwort werden Ergebnisse geprüft, und sofern der von ChatGPT vorgeschlagene Branchentext nicht exakt im Ziel-Branchenschema enthalten ist, wird „k.A.“ mit Konsistenz "X" zurückgegeben. Stimmt der Vorschlag exakt mit der in CRM (Spalte G) überein, wird die Begründung geleert und die Konsistenz auf "ok" gesetzt.
2025-04-08 09:55:19 +00:00