import re with open('app/modules/sag/templates/detail.html', 'r', encoding='utf-8') as f: content = f.read() def extract_between(text, start_marker, end_marker): start = text.find(start_marker) if start == -1: return "", text end = text.find(end_marker, start) if end == -1: return "", text match = text[start:end+len(end_marker)] text = text[:start] + text[end+len(end_marker):] return match, text def extract_div_by_marker(text, marker): start = text.find(marker) if start == -1: return "", text # find the open div tag nearest to the marker looking backwards div_start = text.rfind('