bugfix
This commit is contained in:
@@ -2541,26 +2541,17 @@ def run_dispatcher(mode, sheet_handler, row_limit=None):
|
||||
"""
|
||||
Wählt den passenden Batch-Prozess basierend auf dem Modus.
|
||||
Ermittelt die Startzeile dynamisch basierend auf dem Timestamp in der relevanten Spalte.
|
||||
Die aufgerufenen Prozessfunktionen laden ihre Daten selbst.
|
||||
"""
|
||||
debug_print(f"Starte Dispatcher im Modus '{mode}' mit row_limit={row_limit}.")
|
||||
header_rows = 5
|
||||
|
||||
# --- Startzeilen-Ermittlung basierend auf Modus ---
|
||||
# Definiere, welche Spalte für welchen Modus den Startpunkt bestimmt
|
||||
start_col_key = "Timestamp letzte Prüfung" # Standard (Spalte AO)
|
||||
min_start_row = 7
|
||||
|
||||
# --- KORRIGIERT: Korrekte Schlüsselzuweisung für jeden Modus ---
|
||||
if mode == "website":
|
||||
start_col_key = "Website Scrape Timestamp" # Spalte AT
|
||||
elif mode == "wiki":
|
||||
start_col_key = "Wikipedia Timestamp" # Spalte AN
|
||||
elif mode == "branch":
|
||||
start_col_key = "Timestamp letzte Prüfung" # Spalte AO
|
||||
elif mode == "combined":
|
||||
start_col_key = "Timestamp letzte Prüfung" # Spalte AO (Combined startet, wo der letzte Schritt fehlt)
|
||||
# --- Ende Korrektur ---
|
||||
if mode == "website": start_col_key = "Website Scrape Timestamp" # AT
|
||||
elif mode == "wiki": start_col_key = "Wikipedia Timestamp" # AN # Korrigiert: Wiki-Modus sollte AN prüfen für Start
|
||||
elif mode == "branch": start_col_key = "Timestamp letzte Prüfung" # AO
|
||||
elif mode == "combined": start_col_key = "Timestamp letzte Prüfung" # AO (Combined startet, wo der letzte Schritt fehlt)
|
||||
|
||||
debug_print(f"Dispatcher: Ermittle Startzeile basierend auf Spalte '{start_col_key}'...")
|
||||
start_data_index = sheet_handler.get_start_row_index(check_column_key=start_col_key, min_sheet_row=min_start_row)
|
||||
@@ -2570,10 +2561,9 @@ def run_dispatcher(mode, sheet_handler, row_limit=None):
|
||||
return
|
||||
|
||||
start_row_index_in_sheet = start_data_index + header_rows + 1
|
||||
|
||||
# Hole Gesamtzahl der Zeilen (wird im Handler aktualisiert)
|
||||
total_sheet_rows = len(sheet_handler.sheet_values)
|
||||
|
||||
# Prüfungen für Start- und Endzeile (wie gehabt)
|
||||
if start_data_index >= len(sheet_handler.get_data()):
|
||||
debug_print(f"Ermittelter Start-Daten-Index ({start_data_index}) liegt nach der letzten Datenzeile. Keine neuen Zeilen zu verarbeiten. Dispatcher beendet.")
|
||||
return
|
||||
@@ -2581,7 +2571,6 @@ def run_dispatcher(mode, sheet_handler, row_limit=None):
|
||||
debug_print(f"Sheet hat keine Datenzeilen oder Startzeile ({start_row_index_in_sheet}) ist ungültig. Dispatcher beendet.")
|
||||
return
|
||||
|
||||
# --- Endzeilen-Ermittlung ---
|
||||
if row_limit is not None and row_limit > 0:
|
||||
end_row_index_in_sheet = min(start_row_index_in_sheet + row_limit - 1, total_sheet_rows)
|
||||
elif row_limit == 0:
|
||||
@@ -2606,14 +2595,18 @@ def run_dispatcher(mode, sheet_handler, row_limit=None):
|
||||
process_branch_batch(sheet_handler, start_row_index_in_sheet, end_row_index_in_sheet)
|
||||
elif mode == "combined":
|
||||
debug_print("--- Start Combined Mode: Wiki ---")
|
||||
process_verification_only(sheet_handler, start_row_index_in_sheet, end_row_index_in_sheet) # Lädt Daten, prüft AN, setzt AN
|
||||
# Kurze Pause einfügen, um Google Sheets Zeit für die Aktualisierung zu geben (optional aber sicherer)
|
||||
time.sleep(3)
|
||||
debug_print("--- Start Combined Mode: Website ---")
|
||||
process_website_batch(sheet_handler, start_row_index_in_sheet, end_row_index_in_sheet) # Lädt Daten, prüft AT, setzt AT+AP
|
||||
time.sleep(3) # Kurze Pause
|
||||
process_verification_only(sheet_handler, start_row_index_in_sheet, end_row_index_in_sheet) # Prüft AX, Setzt AX
|
||||
|
||||
# --- WEBSITE-TEIL HIER ENTFERNT ---
|
||||
# debug_print("--- Start Combined Mode: Website ---")
|
||||
# process_website_batch(sheet_handler, start_row_index_in_sheet, end_row_index_in_sheet) # Würde AT prüfen/setzen
|
||||
debug_print("--- Combined Mode: Website-Scraping wird übersprungen ---") # Explizite Meldung
|
||||
|
||||
# Optional: Kurze Pause trotzdem beibehalten? Eher nicht nötig.
|
||||
# time.sleep(1)
|
||||
|
||||
debug_print("--- Start Combined Mode: Branch ---")
|
||||
process_branch_batch(sheet_handler, start_row_index_in_sheet, end_row_index_in_sheet) # Lädt Daten, prüft AO, setzt AO+AP
|
||||
process_branch_batch(sheet_handler, start_row_index_in_sheet, end_row_index_in_sheet) # Prüft AO, Setzt AO+AP
|
||||
debug_print("--- Combined Mode abgeschlossen ---")
|
||||
else:
|
||||
debug_print(f"Ungültiger Modus '{mode}' wurde im Dispatcher übergeben.")
|
||||
|
||||
Reference in New Issue
Block a user