diff --git a/helpers.py b/helpers.py index d1e11782..5e3db1f5 100644 --- a/helpers.py +++ b/helpers.py @@ -1036,13 +1036,25 @@ def generate_fsm_pitch( """ logger = logging.getLogger(__name__) - # 1. Daten-Check - parts = [] - if website_summary and 'k.a.' not in website_summary.lower(): - parts.append(f"Website-Zusammenfassung: {website_summary}") + # 1. Daten-Check und Extraktion + beschreibung_kombiniert = [] + # Extrahiere NUR den reinen Zusammenfassungstext, falls unsere strukturierte Analyse vorliegt + if website_summary and '**GESCHÄFTSMODELL**' in website_summary: + try: + # Extrahiert den Text nach "Zusammenfassung:" und vor dem nächsten Abschnitt + summary_text = website_summary.split('Zusammenfassung:')[1].split('**FSM-POTENZIAL**')[0].strip() + if summary_text: + beschreibung_kombiniert.append(f"Website-Zusammenfassung: {summary_text}") + except IndexError: + # Fallback, falls das Format unerwartet ist + beschreibung_kombiniert.append(f"Website-Zusammenfassung: {website_summary}") + elif website_summary and 'k.a.' not in website_summary.lower(): + beschreibung_kombiniert.append(f"Website-Zusammenfassung: {website_summary}") # Für alte, unstrukturierte Zusammenfassungen + if wiki_absatz and 'k.a.' not in wiki_absatz.lower(): - parts.append(f"Wikipedia-Einleitung: {wiki_absatz}") - combined = "\n".join(parts) + beschreibung_kombiniert.append(f"Wikipedia-Einleitung: {wiki_absatz}") + + combined = "\n".join(beschreibung_kombiniert) if len(combined.split()) < 10: logger.warning(f"Zu wenige Informationen für FSM-Pitch bei {company_name}.")