# utils/markdown_handler.py import os import re from datetime import datetime from models.mensaje_email import MensajeEmail def cargar_cronologia_existente(archivo): mensajes = [] if not os.path.exists(archivo): return mensajes with open(archivo, 'r', encoding='utf-8') as f: contenido = f.read() bloques = contenido.split('---\n\n') for bloque in bloques: if not bloque.strip(): continue match = re.match(r'## (\d{14})\|(.*?)\n\n(.*)', bloque.strip(), re.DOTALL) if match: fecha_str, remitente, contenido = match.groups() fecha = datetime.strptime(fecha_str, '%Y%m%d%H%M%S') adjuntos = [] if '### Adjuntos' in contenido: contenido_principal, lista_adjuntos = contenido.split('### Adjuntos') adjuntos = [adj.strip()[2:-2] for adj in lista_adjuntos.strip().split('\n')] contenido = contenido_principal.strip() mensajes.append(MensajeEmail( remitente=remitente, fecha=fecha, contenido=contenido, adjuntos=adjuntos )) return mensajes