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
This commit is contained in:
2025-04-08 17:58:02 +00:00
parent 7b625e454f
commit 1d6c0c4b5a

View File

@@ -1162,23 +1162,67 @@ def count_linkedin_contacts(company_name, website, position_query):
def main():
global MODE, LOG_FILE
print("Bitte wählen Sie den Betriebsmodus:")
print("1: Vollständige Verarbeitung (alle Funktionen) [Noch nicht fertig]")
print("2: Re-Evaluierung markierter Zeilen (nur 'x' in Spalte A)")
print("3: Alignment-Demo (nur Spaltenüberschriften)")
print("4: Nur Wikipedia-Suche")
print("5: Nur ChatGPT-Auswertung")
print("51: Verifizierungsmodus Batch")
print("1: Vollständige Verarbeitung (alle Funktionen)")
print("11: Re-Evaluation markierter Zeilen (nur 'x' in Spalte A)")
print("21: Website-Scraping Testmodus (nur Website-Rohtext & Zusammenfassung)")
print("22: SERP-API Website Lookup (nur Website-Daten ermitteln)")
print("31: Nur ChatGPT-Auswertung (alle ChatGPT-Routinen)")
print("41: Nur Wikipedia-Scraping")
print("51: Batch-Verifizierung (alte Nummerierung beibehalten)")
print("6: Contact Research (LinkedIn)")
print("8: Batch Token-Zählung")
# Optional: Falls Modus 8 nicht benötigt wird, kann er weggelassen werden.
MODE = input("Geben Sie den Modus (Zahl) ein: ").strip()
if not MODE:
MODE = "1"
LOG_FILE = create_log_filename(MODE)
debug_print(f"Start Betriebsmodus {MODE}")
# Anzeigen der Prompt-Übersicht
for entry in prompt_overview()[1:]:
debug_print(f"{entry[0]}: {entry[1]}")
dp = DataProcessor()
dp.process_rows()
if MODE == "1":
dp.process_rows() # Vollständige Verarbeitung
elif MODE == "11":
# Re-Evaluation markierter Zeilen (z.B. nur "x" in Spalte A)
for i, row in enumerate(dp.sheet_handler.sheet_values[1:], start=2):
if row[0].strip().lower() == "x":
dp._process_single_row(i, row)
elif MODE == "21":
# Testmodus: Nur Website-Scraping (Auswertung der Website-Daten)
for i, row in enumerate(dp.sheet_handler.sheet_values[1:], start=2):
# Hier fordern wir explizit, dass wir nur den Website-Scraping-Teil durchlaufen
dp._process_single_row(i, row, process_wiki=False, process_chatgpt=False)
elif MODE == "22":
# Nur SERP-API Website Lookup: Hier können wir eine separate Funktion einführen, falls benötigt.
# Z.B.: dp.process_serp_website_lookup()
print("SERP-API Website Lookup noch nicht vollständig implementiert.")
elif MODE == "31":
# Nur ChatGPT-Auswertung
for i, row in enumerate(dp.sheet_handler.sheet_values[1:], start=2):
dp._process_single_row(i, row, process_wiki=False, process_chatgpt=True)
elif MODE == "41":
# Nur Wikipedia-Scraping
for i, row in enumerate(dp.sheet_handler.sheet_values[1:], start=2):
dp._process_single_row(i, row, process_wiki=True, process_chatgpt=False)
elif MODE == "51":
process_verification_only()
elif MODE == "6":
# Contact Research (LinkedIn)
process_contact_research()
else:
start_index = dp.sheet_handler.get_start_index()
print(f"Starte bei Zeile {start_index+1}")
rows_processed = 0
for i, row in enumerate(dp.sheet_handler.sheet_values[1:], start=2):
if i < start_index:
continue
if rows_processed >= 1: # Falls eine spezifische Anzahl gewünscht wird, kann num_rows hier gesetzt werden.
break
dp._process_single_row(i, row)
rows_processed += 1
print(f"Verarbeitung abgeschlossen. Logfile: {LOG_FILE}")
if __name__ == '__main__':