Commit Graph

1654 Commits

Author SHA1 Message Date
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
2fb083a8c8 v1.4.3 Anpassung Branchenbewertung im Batch, Ziel-Branchenschema streng prüfen, Zeilenabfrage in Mod
- Alignment Demo (Zeilen A1–AQ5) wurde exakt wie in der Ausgangsversion integriert.
- Im Batch-Modus (Modus 51) wird nun zusätzlich die Branchenbewertung (bis Spalte Y) ausgeführt:
    • Spalte W: Chat Vorschlag Branche
    • Spalte X: Chat Konsistenz Branche
    • Spalte Y: Chat Begründung Abweichung Branche
- In evaluate_branche_chatgpt wird überprüft, ob der von ChatGPT vorgeschlagene Branchentext exakt im Ziel-Branchenschema enthalten ist.
  Falls nicht, wird „k.A.“ mit Konsistenz "X" und entsprechender Begründung zurückgegeben.
- Wenn der Vorschlag mit der in CRM festgelegten Branche übereinstimmt, wird keine Begründung (leere Zeichenkette) ausgegeben.
- Vor Start im Batch wird abgefragt, wieviele Zeilen verarbeitet werden sollen.
- Bei Wikipedia: Wird _nicht_ erneut gesucht, wenn first_paragraph "k.A." ist.
2025-04-08 08:56:03 +00:00
4822da3337 v1.4.2 Branchenbewertung im Batch, Wikipedia k.A.-Handling optimiert, Zeilenabfrage in Modus 51
- Alignment Demo (Zeilen A1–AQ5) exakt gemäß der vorgegebenen Ausgangsversion eingebaut.
- Im Batch-Prozess (Modus 51) wird jetzt zusätzlich die Branchenbewertung (bis einschließlich Spalte Y) durchgeführt.
  - Spalte W: Chat Vorschlag Branche
  - Spalte X: Chat Konsistenz Branche
  - Spalte Y: Chat Begründung Abweichung Branche
- Wenn der extrahierte Wikipedia-Artikel "k.A." enthält, wird nicht erneut nach einem Artikel gesucht; stattdessen bleibt der Wert "k.A.".
- Vor Start im Batch (Modus 51) wird abgefragt, wie viele Zeilen verarbeitet werden sollen.
- Weitere Schritte im Vollverarbeitungsmodus (insb. Mitarbeiter‑Schätzung und Kontaktsuche) sind vorerst noch nicht vollständig implementiert.
2025-04-08 08:36:04 +00:00
f31dd63dba v1.4.1 Anpassung Spaltenzuordnung, erneute Suche bei k.A. und Zeilenabfrage im Modus 51
- Wikipedia-Daten werden nun von Spalte L bis R geschrieben (statt von K bis Q).
- Falls Wikipedia-Daten "k.A." liefern, wird eine erneute Suche durchgeführt und ChatGPT soll den Artikel recherchieren.
- Im Modus 51 wird nun abgefragt, wieviele Zeilen verarbeitet werden sollen.
- Konsistenzprüfung mit der Alignment Demo sichergestellt.
2025-04-08 08:10:13 +00:00
10cb0b7881 debug 2025-04-08 05:48:17 +00:00
86fff9272d v1.4.0 Erweiterung Betriebsmodi, robuste ChatGPT-Verarbeitung, Logging-Verbesserungen
- Betriebsmodus wird im Dateinamen integriert (z.B. 02-04-2025_16-51_v14_Modus4.txt)
- Logfile startet mit der Anzeige der gewählten Modus-Auswahl und einer Übersicht der verwendeten Prompts
- Umbenennung der Funktion "validate_article_with_chatgpt" in "process_wiki_verification" (inkl. Prüfung auf "k.A.")
- Neue Funktionen process_employee_estimation und process_employee_consistency zur robusten Mitarbeiterschätzung und -vergleich
- Separates Token-Counting pro Modul (Wiki, Chat, Mitarbeiter) und Ausgabe in Spalte AQ
- Timestamp-Prüfung: Vor jedem Verarbeitungsschritt wird geprüft, ob bereits ein Timestamp gesetzt wurde (sodass doppelte Verarbeitung verhindert wird)
- Weitere Anpassungen in den Betriebsmodi (Modus 1, 2, 3, 4, 5, 51, 6 und Batch-Modus 8) gemäß Abstimmung
2025-04-08 05:20:10 +00:00
d934a026f6 bugfix 2025-04-07 19:10:01 +00:00
614ff003e1 1.4.0 von 4.o 2025-04-07 19:06:22 +00:00
238dddbb82 Bugfix 2025-04-07 19:01:03 +00:00
9e98f1d054 v1.4.0 Erweiterung Betriebsmodi, robuste ChatGPT-Verarbeitung, Logging-Verbesserungen
- Betriebsmodus im Dateinamen ergänzt, inkl. Beginn des Logs mit Modusauswahl
- Funktion 'Chat Vorschlag Wiki Artikel' umbenannt für bessere Lesbarkeit
- ChatGPT Mitarbeiter-Schätzung robust, 'k.A.' wird als fehlender Artikel interpretiert
- ChatGPT Konsistenzprüfung Mitarbeiterzahl mit Begründung für abweichende Werte
- Token-Zählung pro Modul ergänzt für detaillierte Auswertung
- Batch-Modus bleibt bestehen, Optimierung später geplant
- Branchenvorschlag wird immer ausgegeben, unabhängig vom Batch-Modus
- Timestamp-Prüfung integriert, um doppelte Bearbeitung zu vermeiden
- Alle Betriebsmodi geprüft, Modus 1 funktionsfähig bestätigt
2025-04-07 18:50:51 +00:00
639f0c5733 Alignment Update 2025-04-07 12:45:54 +00:00
febe00d213 Bugfix 2025-04-07 12:32:32 +00:00
4d9efa8a70 Alignment Update 2025-04-07 12:19:23 +00:00
1ef10605b2 Headder Aktualisierung 2025-04-07 07:39:05 +00:00
167a03f2e3 Alignment Demo 2025-04-07 07:28:01 +00:00