brancheneinstufung2.py aktualisiert
This commit is contained in:
@@ -86,7 +86,7 @@ def main():
|
||||
formatter_class=argparse.RawTextHelpFormatter
|
||||
)
|
||||
mode_categories = {
|
||||
"Daten-Synchronisation": ["sync"],
|
||||
"Daten-Synchronisation": ["sync", "debug_sync"],
|
||||
"Batch-Verarbeitung": ["wiki_verify", "website_scraping", "summarize_website", "branch_eval", "suggest_parents", "fsm_pitch"],
|
||||
"Sequentielle Verarbeitung": ["full_run"],
|
||||
"Re-Evaluation": ["reeval"],
|
||||
@@ -168,10 +168,24 @@ def main():
|
||||
# --- Modus-Dispatching ---
|
||||
start_time = time.time()
|
||||
|
||||
if selected_mode == "sync":
|
||||
# --- SPEZIFISCHE LOGIK FÜR DEN SYNC-MODUS ---
|
||||
if selected_mode == "debug_sync":
|
||||
# --- NEUER DEBUG-MODUS ---
|
||||
logger.info("Führe Initialisierung für Sync-Debug-Modus durch...")
|
||||
if not sheet_handler.load_data():
|
||||
logger.critical("Konnte initiale Daten aus dem Google Sheet nicht laden. Debug-Prozess wird abgebrochen.")
|
||||
return
|
||||
|
||||
d365_file_path = args.sync_file
|
||||
if not os.path.exists(d365_file_path):
|
||||
logger.critical(f"Export-Datei nicht gefunden: {d365_file_path}")
|
||||
else:
|
||||
# Wir übergeben den sheet_handler, um eine erneute Verbindung zu vermeiden
|
||||
sync_manager = SyncManager(sheet_handler, d365_file_path)
|
||||
sync_manager.debug_sync() # Aufruf der neuen Debug-Funktion
|
||||
|
||||
# Der elif-Block für den regulären Sync
|
||||
elif selected_mode == "sync":
|
||||
logger.info("Führe Initialisierung für Sync-Modus durch...")
|
||||
|
||||
if not sheet_handler.load_data():
|
||||
logger.critical("Konnte initiale Daten aus dem Google Sheet nicht laden. Sync-Prozess wird abgebrochen.")
|
||||
return
|
||||
@@ -179,25 +193,31 @@ def main():
|
||||
d365_file_path = args.sync_file
|
||||
if not os.path.exists(d365_file_path):
|
||||
logger.critical(f"Export-Datei nicht gefunden: {d365_file_path}")
|
||||
print(f"\n! FEHLER: Die angegebene Sync-Datei wurde nicht gefunden: {d365_file_path}")
|
||||
else:
|
||||
sync_manager = SyncManager(sheet_handler, d365_file_path)
|
||||
sync_manager.run_sync()
|
||||
|
||||
# Ab hier beginnt die bisherige Logik für alle anderen Modi
|
||||
else:
|
||||
# --- BISHERIGE LOGIK FÜR ALLE ANDEREN MODI ---
|
||||
wiki_scraper = WikipediaScraper()
|
||||
data_processor = DataProcessor(sheet_handler=sheet_handler, wiki_scraper=wiki_scraper)
|
||||
|
||||
# --- Modul-Versionen loggen (NACH der Initialisierung) ---
|
||||
modules_to_log = {
|
||||
"DataProcessor": data_processor, "GoogleSheetHandler": google_sheet_handler,
|
||||
"WikipediaScraper": wikipedia_scraper, "Helpers": helpers
|
||||
"DataProcessor": data_processor,
|
||||
"GoogleSheetHandler": google_sheet_handler,
|
||||
"WikipediaScraper": wikipedia_scraper,
|
||||
"Helpers": helpers
|
||||
}
|
||||
log_module_versions(modules_to_log)
|
||||
# --- Ende Version-Logging ---
|
||||
|
||||
# Expliziter Setup-Aufruf, nachdem alle Konfigurationen geladen sind.
|
||||
if not data_processor.setup():
|
||||
logger.critical("Setup des DataProcessors fehlgeschlagen. Das Skript wird beendet.")
|
||||
return
|
||||
|
||||
# --- Modus-Dispatching für die restlichen Modi ---
|
||||
steps_to_run_set = set(step.strip().lower() for step in args.steps.split(',') if step.strip() in valid_steps) if args.steps else set(valid_steps)
|
||||
|
||||
if selected_mode == "full_run":
|
||||
|
||||
Reference in New Issue
Block a user