37 lines
919 B
Python
37 lines
919 B
Python
# utils/markdown_handler.py
|
|
import os
|
|
import re
|
|
from models.pagina_html import PaginaHTML
|
|
|
|
|
|
def generar_indice(paginas):
|
|
"""
|
|
Genera un índice para las páginas HTML.
|
|
"""
|
|
indice = "# Índice de Contenido\n\n"
|
|
|
|
for pagina in paginas:
|
|
indice += pagina.get_index_entry() + "\n"
|
|
|
|
indice += "\n---\n\n"
|
|
return indice
|
|
|
|
|
|
def escribir_archivo_markdown(paginas, ruta_archivo):
|
|
"""
|
|
Escribe el archivo Markdown con el índice y todas las páginas.
|
|
"""
|
|
try:
|
|
with open(ruta_archivo, "w", encoding="utf-8") as f:
|
|
# Escribir el índice
|
|
f.write(generar_indice(paginas))
|
|
|
|
# Escribir el contenido de cada página
|
|
for pagina in paginas:
|
|
f.write(pagina.to_markdown())
|
|
|
|
return True
|
|
except Exception as e:
|
|
print(f"Error escribiendo archivo Markdown {ruta_archivo}: {str(e)}")
|
|
return False
|