This commit is contained in:
2025-06-30 13:45:55 +00:00
parent 18b7ac5ed7
commit a85e69e5d4

View File

@@ -152,19 +152,28 @@ class WikipediaScraper:
self.logger.error(f"Allgemeiner Fehler waehrend der Domain-Link-Pruefung fuer '{page.title[:100]}...': {e_link_check}")
is_valid = False
reason = "Keine Validierungsregel traf zu"
reason = ""
# NEU: Detaillierte Debug-Ausgaben für jeden Schritt
self.logger.debug(f" Validierungs-Check für '{page.title[:50]}...':")
self.logger.debug(f" - Aehnlichkeit: {similarity:.2f} (Schwelle: {standard_threshold:.2f})")
self.logger.debug(f" - Domain '{full_domain}' im Artikel gefunden: {domain_found}")
self.logger.debug(f" - Erstes Wort identisch: {first_word_match}")
self.logger.debug(f" - Erste 2 Worte identisch: {first_two_words_match}")
if similarity >= standard_threshold:
is_valid = True; reason = f"Gesamt-Aehnlichkeit ({similarity:.2f}) >= Schwelle ({standard_threshold:.2f})"
is_valid, reason = True, f"Gesamt-Aehnlichkeit ({similarity:.2f}) >= Schwelle ({standard_threshold:.2f})"
elif domain_found and first_two_words_match:
is_valid = True; reason = f"Domain gefunden UND erste 2 Worte stimmen ueberein"
is_valid, reason = True, f"Domain gefunden UND erste 2 Worte stimmen ueberein"
elif domain_found and first_word_match and similarity >= 0.40:
is_valid = True; reason = f"Domain gefunden UND erstes Wort stimmt ueberein UND Aehnlichkeit >= 0.40"
is_valid, reason = True, f"Domain gefunden UND erstes Wort stimmt ueberein UND Aehnlichkeit >= 0.40"
elif first_two_words_match and similarity >= 0.45:
is_valid = True; reason = f"Erste zwei Worte stimmen ueberein UND Aehnlichkeit >= 0.45"
is_valid, reason = True, f"Erste zwei Worte stimmen ueberein UND Aehnlichkeit >= 0.45"
elif domain_found and similarity >= 0.50:
is_valid = True; reason = f"Domain gefunden UND Aehnlichkeit >= 0.50"
is_valid, reason = True, f"Domain gefunden UND Aehnlichkeit >= 0.50"
elif first_word_match and similarity >= 0.55:
is_valid = True; reason = f"Erstes Wort stimmt ueberein UND Aehnlichkeit >= 0.55"
is_valid, reason = True, f"Erstes Wort stimmt ueberein UND Aehnlichkeit >= 0.55"
else:
reason = "Keine Validierungsregel traf zu"
log_level = logging.INFO if is_valid else logging.DEBUG
self.logger.log(log_level, f" => Artikel '{page.title[:100]}...' {'VALIDIERT' if is_valid else 'NICHT validiert'} (Grund: {reason})")