data_processor.py aktualisiert
This commit is contained in:
@@ -447,17 +447,21 @@ 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]]})
|
||||
|
||||
# --- Finales Schreiben ins Sheet ---
|
||||
if wiki_data_updated_in_this_run:
|
||||
if wiki_data_was_extracted_or_updated:
|
||||
key_mapping = {
|
||||
'Wiki URL': 'url', 'Wiki Sitz Stadt': 'sitz_stadt', 'Wiki Sitz Land': 'sitz_land',
|
||||
'Wiki Absatz': 'first_paragraph', 'Wiki Branche': 'branche', 'Wiki Umsatz': 'umsatz',
|
||||
'Wiki Mitarbeiter': 'mitarbeiter', 'Wiki Kategorien': 'categories'
|
||||
}
|
||||
for sheet_col_name, data_key in key_mapping.items():
|
||||
updates.append({
|
||||
'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP[sheet_col_name] + 1)}{row_num_in_sheet}',
|
||||
'values': [[final_wiki_data.get(data_key, 'k.A.')]]
|
||||
})
|
||||
# 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({
|
||||
'range': f'{col_letter}{row_num_in_sheet}',
|
||||
'values': [[final_wiki_data.get(data_key, 'k.A.')]]
|
||||
})
|
||||
|
||||
updates.append({
|
||||
'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP["Wikipedia Timestamp"] + 1)}{row_num_in_sheet}',
|
||||
@@ -506,27 +510,14 @@ class DataProcessor:
|
||||
schema_data=self.schema_data
|
||||
)
|
||||
|
||||
# Updates für die Sheet-Spalten vorbereiten
|
||||
updates.append({
|
||||
'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP["Chat Vorschlag Branche"] + 1)}{row_num_in_sheet}',
|
||||
'values': [[branch_result.get("branch", "FEHLER BRANCH")]]
|
||||
})
|
||||
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")]]
|
||||
})
|
||||
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({'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')]]})
|
||||
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')]]})
|
||||
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.')]]})
|
||||
|
||||
except Exception as e_branch_eval:
|
||||
self.logger.error(
|
||||
f"FEHLER bei Branchen-Einstufung für Zeile {row_num_in_sheet}: {e_branch_eval}")
|
||||
# Optional: Fehlerwerte in die Spalten schreiben
|
||||
self.logger.error(f"FEHLER bei Branchen-Einstufung für Zeile {row_num_in_sheet}: {e_branch_eval}")
|
||||
# Fehlerwerte in die Spalten schreiben
|
||||
error_updates = [
|
||||
{"key": "Chat Vorschlag Branche", "value": "FEHLER_CALL"},
|
||||
{"key": "Chat Branche Konfidenz", "value": "N/A"},
|
||||
@@ -534,10 +525,12 @@ class DataProcessor:
|
||||
{"key": "Chat Begruendung Abweichung Branche", "value": str(e_branch_eval)[:100]}
|
||||
]
|
||||
for item in error_updates:
|
||||
updates.append({
|
||||
'range': f'{self.sheet_handler._get_col_letter(COLUMN_MAP[item["key"]] + 1)}{row_num_in_sheet}',
|
||||
'values': [[item["value"]]]
|
||||
})
|
||||
col_idx = get_col_idx(item["key"])
|
||||
if col_idx is not None:
|
||||
updates.append({
|
||||
'range': f'{self.sheet_handler._get_col_letter(col_idx + 1)}{row_num_in_sheet}',
|
||||
'values': [[item["value"]]]
|
||||
})
|
||||
|
||||
# --- NEUER SCHRITT: FSM Pitch generieren ---
|
||||
if 'fsm_pitch' in chat_steps_to_run and self._needs_fsm_pitch(row_data, force_reeval):
|
||||
|
||||
Reference in New Issue
Block a user