improve indexing

This commit is contained in:
lelo 2025-04-12 19:49:23 +00:00
parent 04bb218ac7
commit eec9deefad

View File

@ -128,6 +128,19 @@ def updatefileindex():
# Prepend the foldername so it becomes part of the stored relative path. # Prepend the foldername so it becomes part of the stored relative path.
relative_path = os.path.join(foldername, rel_part).replace(os.sep, '/') relative_path = os.path.join(foldername, rel_part).replace(os.sep, '/')
filetype = os.path.splitext(entry.name)[1].lower() filetype = os.path.splitext(entry.name)[1].lower()
# Retrieve the hit count for this file.
hit_count = get_hit_count(relative_path)
category, titel, name, performance_date, site = None, None, None, None, None
# Determine the site
if foldername == 'Gottesdienste Speyer':
site = 'Speyer'
elif foldername == 'Gottesdienste Schwegenheim':
site = 'Schwegenheim'
if filetype == '.mp3':
transcript = None transcript = None
# Check for a corresponding transcript file in a sibling "Transkription" folder. # Check for a corresponding transcript file in a sibling "Transkription" folder.
@ -142,22 +155,19 @@ def updatefileindex():
except Exception: except Exception:
transcript = None transcript = None
# Retrieve the hit count for this file.
hit_count = get_hit_count(relative_path)
category, titel, name, performance_date, site = None, None, None, None, None
if filetype == '.mp3':
# Determine the site
if foldername == 'Gottesdienste Speyer':
site = 'Speyer'
elif foldername == 'Gottesdienste Schwegenheim':
site = 'Schwegenheim'
# extract category and titel from filename # extract category and titel from filename
filename_ext = os.path.splitext(entry.name)[0] filename_ext = os.path.splitext(entry.name)[0]
left_side, right_side = filename_ext.split('-', 1) if '-' in filename_ext else (filename_ext, None) left_side, right_side = filename_ext.split('-', 1) if '-' in filename_ext else (filename_ext, None)
if 'predigt' in left_side.lower(): try:
int(left_side.strip())
# first part is only a number
previous_right_side = right_side
left_side, right_side = previous_right_side.split('-', 1) if '-' in previous_right_side else (previous_right_side, None)
except:
# first part not a number
continue
if 'predig' in left_side.lower():
category = 'Predigt' category = 'Predigt'
elif 'wort' in left_side.lower() or 'einladung' in left_side.lower(): elif 'wort' in left_side.lower() or 'einladung' in left_side.lower():
category = 'Vorwort' category = 'Vorwort'