From 0c6c621919e967c3501a0b0c2a640925c396c05a Mon Sep 17 00:00:00 2001 From: OneNewDev Date: Mon, 6 Jun 2022 12:17:02 +0200 Subject: [PATCH] exclude code blocks --- tagger.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tagger.py b/tagger.py index 437d95c..a03a81d 100644 --- a/tagger.py +++ b/tagger.py @@ -13,6 +13,7 @@ SOURCE_FILENAME = 'index.txt' OUTPUT_FILE = 'tags.json' TAGS_PER_ARTICLE = 5 JSON_INDENT = 2 +EXCLUDED_HTML_TAGS = {'code'} # Wegen Performance vordefinierte Variablen _UPPER_CHECK = re.compile(r'[A-Z]') @@ -29,6 +30,7 @@ class FileScanner(HTMLParser): super().__init__() self.file = file self.texte = [] + self._current_html_tag = None def scan_file(self): # Datei einlesen @@ -86,6 +88,7 @@ class FileScanner(HTMLParser): return sorted(words_with_usage.values(), key=lambda tag: tag.score, reverse=True) def handle_starttag(self, tag, attrs): + self._current_html_tag = tag # Die Links, die in den 'href' Attributen eines HTML-Elements stehen, mit einbeziehen. if tag != "a": return @@ -95,8 +98,9 @@ class FileScanner(HTMLParser): break def handle_data(self, data): - # Den Text innerhalb eines HTML-Elements mit einbeziehen. - self.texte.append(data) + if self._current_html_tag not in EXCLUDED_HTML_TAGS: + # Den Text innerhalb eines HTML-Elements mit einbeziehen. + self.texte.append(data) def display_tags(tags, min_score):