data_processor.py aktualisiert

This commit is contained in:
2025-07-19 19:14:16 +00:00
parent bc761ed783
commit 2268306605

View File

@@ -447,15 +447,19 @@ class DataProcessor:
updates.append({'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP["Wiki Verif. Timestamp"] + 1)}{row_num_in_sheet}', 'values': [[now_timestamp]]}) updates.append({'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP["Wiki Verif. Timestamp"] + 1)}{row_num_in_sheet}', 'values': [[now_timestamp]]})
# --- Finales Schreiben ins Sheet --- # --- Finales Schreiben ins Sheet ---
if wiki_data_updated_in_this_run: if wiki_data_was_extracted_or_updated:
key_mapping = { key_mapping = {
'Wiki URL': 'url', 'Wiki Sitz Stadt': 'sitz_stadt', 'Wiki Sitz Land': 'sitz_land', 'Wiki URL': 'url', 'Wiki Sitz Stadt': 'sitz_stadt', 'Wiki Sitz Land': 'sitz_land',
'Wiki Absatz': 'first_paragraph', 'Wiki Branche': 'branche', 'Wiki Umsatz': 'umsatz', 'Wiki Absatz': 'first_paragraph', 'Wiki Branche': 'branche', 'Wiki Umsatz': 'umsatz',
'Wiki Mitarbeiter': 'mitarbeiter', 'Wiki Kategorien': 'categories' 'Wiki Mitarbeiter': 'mitarbeiter', 'Wiki Kategorien': 'categories'
} }
for sheet_col_name, data_key in key_mapping.items(): for sheet_col_name, data_key in key_mapping.items():
# KORRIGIERT: Nutze die globale Hilfsfunktion get_col_idx
col_idx = get_col_idx(sheet_col_name)
if col_idx is not None:
col_letter = self.sheet_handler._get_col_letter(col_idx + 1)
updates.append({ updates.append({
'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP[sheet_col_name] + 1)}{row_num_in_sheet}', 'range': f'{col_letter}{row_num_in_sheet}',
'values': [[final_wiki_data.get(data_key, 'k.A.')]] 'values': [[final_wiki_data.get(data_key, 'k.A.')]]
}) })
@@ -506,27 +510,14 @@ class DataProcessor:
schema_data=self.schema_data schema_data=self.schema_data
) )
# Updates für die Sheet-Spalten vorbereiten updates.append({'range': f'{self.sheet_handler._get_col_letter(get_col_idx("Chat Vorschlag Branche") + 1)}{row_num_in_sheet}', 'values': [[branch_result.get('branch', 'FEHLER')]]})
updates.append({ updates.append({'range': f'{self.sheet_handler._get_col_letter(get_col_idx("Chat Branche Konfidenz") + 1)}{row_num_in_sheet}', 'values': [[branch_result.get('confidence', 'N/A')]]})
'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP["Chat Vorschlag Branche"] + 1)}{row_num_in_sheet}', updates.append({'range': f'{self.sheet_handler._get_col_letter(get_col_idx("Chat Konsistenz Branche") + 1)}{row_num_in_sheet}', 'values': [[branch_result.get('consistency', 'error')]]})
'values': [[branch_result.get("branch", "FEHLER BRANCH")]] updates.append({'range': f'{self.sheet_handler._get_col_letter(get_col_idx("Chat Begruendung Abweichung Branche") + 1)}{row_num_in_sheet}', 'values': [[branch_result.get('justification', 'k.A.')]]})
})
updates.append({
'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP["Chat Branche Konfidenz"] + 1)}{row_num_in_sheet}',
'values': [[branch_result.get("confidence", "N/A CONF")]]
})
updates.append({
'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP["Chat Konsistenz Branche"] + 1)}{row_num_in_sheet}',
'values': [[branch_result.get("consistency", "error CONS")]]
})
updates.append({
'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP["Chat Begruendung Abweichung Branche"] + 1)}{row_num_in_sheet}',
'values': [[branch_result.get("justification", "No JUST")]]
})
except Exception as e_branch_eval: except Exception as e_branch_eval:
self.logger.error( self.logger.error(f"FEHLER bei Branchen-Einstufung für Zeile {row_num_in_sheet}: {e_branch_eval}")
f"FEHLER bei Branchen-Einstufung für Zeile {row_num_in_sheet}: {e_branch_eval}") # Fehlerwerte in die Spalten schreiben
# Optional: Fehlerwerte in die Spalten schreiben
error_updates = [ error_updates = [
{"key": "Chat Vorschlag Branche", "value": "FEHLER_CALL"}, {"key": "Chat Vorschlag Branche", "value": "FEHLER_CALL"},
{"key": "Chat Branche Konfidenz", "value": "N/A"}, {"key": "Chat Branche Konfidenz", "value": "N/A"},
@@ -534,8 +525,10 @@ class DataProcessor:
{"key": "Chat Begruendung Abweichung Branche", "value": str(e_branch_eval)[:100]} {"key": "Chat Begruendung Abweichung Branche", "value": str(e_branch_eval)[:100]}
] ]
for item in error_updates: for item in error_updates:
col_idx = get_col_idx(item["key"])
if col_idx is not None:
updates.append({ updates.append({
'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP[item["key"]] + 1)}{row_num_in_sheet}', 'range': f'{self.sheet_handler._get_col_letter(col_idx + 1)}{row_num_in_sheet}',
'values': [[item["value"]]] 'values': [[item["value"]]]
}) })