Coverage for src/wiktextract/extractor/th/etymology.py: 100%
12 statements
« prev ^ index » next coverage.py v7.10.7, created at 2025-10-13 10:14 +0000
« prev ^ index » next coverage.py v7.10.7, created at 2025-10-13 10:14 +0000
1from wikitextprocessor.parser import (
2 LEVEL_KIND_FLAGS,
3 LevelNode,
4 TemplateNode,
5 WikiNode,
6)
8from ...page import clean_node
9from ...wxr_context import WiktextractContext
10from .models import WordEntry
13def extract_etymology_section(
14 wxr: WiktextractContext, base_data: WordEntry, level_node: LevelNode
15) -> None:
16 e_nodes = []
17 for node in level_node.children:
18 if not (
19 (isinstance(node, WikiNode) and node.kind in LEVEL_KIND_FLAGS)
20 or (
21 isinstance(node, TemplateNode)
22 and node.template_name in ["ja-see", "ja-see-kango"]
23 )
24 ):
25 e_nodes.append(node)
27 e_str = clean_node(wxr, base_data, e_nodes)
28 if e_str != "":
29 base_data.etymology_text = e_str