bugfix
This commit is contained in:
@@ -1887,21 +1887,27 @@ def serp_wikipedia_lookup(company_name, website=None, min_score=0.4):
|
||||
score = similarity
|
||||
# logger.debug(f" -> Kandidat '{title[:100]}...': Basis-Aehnlichkeit={similarity:.2f}") # Zu viel Laerm im Debug
|
||||
|
||||
# 2. Bonus fuer Keywords im Titel (z.B. "(Unternehmen)", Rechtsformen)
|
||||
bonus = 0.0
|
||||
if "(unternehmen)" in title_lower:
|
||||
bonus += 0.2 # Starker Bonus fuer eindeutige Kennzeichnung
|
||||
# logger.debug(" -> Bonus +0.2 fuer '(unternehmen)'") # Zu viel Laerm im Debug
|
||||
# Pruefe auf gaengige Rechtsformen am Ende des Titels
|
||||
elif re.search(r'\b(?:gmbh|ag|kg|ltd|inc|corp|s\.?a\.?|se|group|holding)\b$', title_lower): # Regex fuer Wortgrenze am Ende
|
||||
bonus += 0.1 # Kleinerer Bonus
|
||||
# logger.debug(" -> Bonus +0.1 fuer Rechtsform/Gruppen-Keyword") # Zu viel Laerm im Debug
|
||||
|
||||
|
||||
# NEU: Starker Bonus, wenn der normalisierte Suchname signifikant im normalisierten Titel enthalten ist
|
||||
# oder der normalisierte Titel im Suchnamen (für Fälle wie "Bosch (Unternehmen)" vs "Robert Bosch GmbH")
|
||||
if normalized_search_name in normalized_title or normalized_title in normalized_search_name:
|
||||
bonus += 0.3 # Relativ starker Bonus für gute Namensübereinstimmung
|
||||
# logger.debug(f" -> Bonus +0.3 fuer Namensübereinstimmung: '{normalized_search_name}' in '{normalized_title}'")
|
||||
|
||||
# Bestehende Boni anpassen oder leicht reduzieren, wenn der obige Bonus schon greift
|
||||
if "(unternehmen)" in title_lower:
|
||||
bonus += 0.15 # Etwas reduziert, da Namensmatch wichtiger
|
||||
# logger.debug(" -> Bonus +0.15 fuer '(unternehmen)'")
|
||||
elif re.search(r'\b(?:gmbh|ag|kg|ltd|inc|corp|s\.?a\.?|se|group|holding)\b$', title_lower):
|
||||
bonus += 0.05 # Kleinerer Bonus
|
||||
# logger.debug(" -> Bonus +0.05 fuer Rechtsform/Gruppen-Keyword")
|
||||
|
||||
# 3. Bonus fuer Sprache (Deutsch bevorzugt)
|
||||
if url.lower().startswith("https://de.wikipedia.org"):
|
||||
bonus += 0.05
|
||||
# logger.debug(" -> Bonus +0.05 fuer de.wikipedia.org") # Zu viel Laerm im Debug
|
||||
# logger.debug(" -> Bonus +0.05 fuer de.wikipedia.org")
|
||||
|
||||
|
||||
# Gesamtscore ist Basis-Aehnlichkeit plus Boni
|
||||
total_score = score + bonus
|
||||
|
||||
Reference in New Issue
Block a user