rework category
This commit is contained in:
parent
84bf7bae0c
commit
05782a0c33
@ -84,30 +84,28 @@ def extract_structure_from_string(input_string):
|
|||||||
# first part not a number
|
# first part not a number
|
||||||
pass
|
pass
|
||||||
|
|
||||||
if 'predig' in left_side.lower() or 'thema' in left_side.lower():
|
# define your mapping: category → list of trigger-words
|
||||||
category = 'Predigt'
|
CATEGORY_KEYWORDS = {
|
||||||
elif 'wort' in left_side.lower() or 'einladung' in left_side.lower() or 'begrüßung' in left_side.lower() or 'ansprache' in left_side.lower() or 'einleitung' in left_side.lower() or 'aufruf zum' in left_side.lower() or 'zuruf zum' in left_side.lower():
|
'Predigt': ['predig', 'thema'],
|
||||||
category = 'Vorwort'
|
'Vorwort': ['wort', 'einladung', 'begrüßung', 'ansprache', 'einleitung', 'aufruf zum', 'zuruf zum'],
|
||||||
elif 'kinderchor' in left_side.lower():
|
'Kinderchor': ['kinderchor'],
|
||||||
category = 'Kinderchor'
|
'Jugendchor': ['jugendchor'],
|
||||||
elif 'jugendchor' in left_side.lower():
|
'Orchester': ['orchester', 'sinfonie', 'symphonie'],
|
||||||
category = 'Jugendchor'
|
'Chor': ['chor'],
|
||||||
elif 'orchester' in input_string.lower() or 'sinfonie' in input_string.lower() or 'symphonie' in input_string.lower():
|
'Gemeinsamer Gesang': ['gemeinsam', 'gemeindelied', 'gemeinsamer gesang'],
|
||||||
category = 'Orchester'
|
'Gruppenlied': ['gruppenlied', 'jugend', 'lied', 'musikgruppe'],
|
||||||
elif 'chor' in left_side.lower():
|
'Gedicht': ['gedicht'],
|
||||||
category = 'Chor'
|
'Erzählung': ['vortrag', 'erzä', 'program'],
|
||||||
elif 'gemeinsam' in left_side.lower() or 'gemeindelied' in left_side.lower() or 'gemeinsamer gesang' in input_string.lower():
|
'Instrumental': ['instrumental', 'musikstück', 'harfenstück'],
|
||||||
category = 'Gemeinsamer Gesang'
|
}
|
||||||
elif 'gruppenlied' in left_side.lower() or 'jugend' in left_side.lower() or 'lied' in left_side.lower() or 'musikgruppe' in left_side.lower():
|
|
||||||
category = 'Gruppenlied'
|
# walk the dict in your desired priority order
|
||||||
elif 'gedicht' in left_side.lower():
|
|
||||||
category = 'Gedicht'
|
|
||||||
elif 'vortrag' in left_side.lower() or 'erzä' in left_side.lower() or 'program' in left_side.lower():
|
|
||||||
category = 'Erzählung'
|
|
||||||
elif 'instrumental' in input_string.lower() or 'musikstück' in left_side.lower() or 'harfenstück' in left_side.lower():
|
|
||||||
category = 'Instrumental'
|
|
||||||
else:
|
|
||||||
category = None
|
category = None
|
||||||
|
text = left_side.lower()
|
||||||
|
for cat, keywords in CATEGORY_KEYWORDS.items():
|
||||||
|
if any(kw in text for kw in keywords):
|
||||||
|
category = cat
|
||||||
|
break
|
||||||
|
|
||||||
if right_side:
|
if right_side:
|
||||||
titel, name = right_side.split('-', 1) if '-' in right_side else (right_side, None)
|
titel, name = right_side.split('-', 1) if '-' in right_side else (right_side, None)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user