Cómo usar el entorno de tiempo de ejecución HTML en Python
Algún procesamiento de HTML asume un entorno de navegación: una ventana, una ubicación, almacenamiento, despacho de eventos. Aspose.HTML FOSS para Python modela ese entorno en puro Python — Window, Navigator, Location, History, Storage, la familia Event, y observadores — por lo que dichos documentos se procesan del lado del servidor. Esta guía recorre la capa, usando pip para la instalación.
Guía paso a paso
Paso 1: Instalar el paquete
git clone https://github.com/aspose-html-foss/Aspose.HTML-FOSS-for-Python.git
cd Aspose.HTML-FOSS-for-Python
pip install -e .Paso 2: Importar las clases requeridas
from aspose_html.dom import Window, EventTarget, AbortControllerPaso 3: Saber cuándo necesitas el entorno
El análisis, CSSOM y el diseño nunca requieren una ventana. Recurra a esta capa solo cuando el procesamiento de un documento dependa del estado del entorno — navegación, almacenamiento, eventos u observadores.
Paso 4: Utilizar los objetos del entorno
Window ancla el entorno con WindowEventLoop que impulsa el despacho; Location y History modelan el estado de navegación; Storage modela el almacenamiento web de pares clave-valor; la identidad de Navigator es configurable a través de set_default_user_agent(). Los eventos se despachan a través de EventTarget con la familia estándar Event, y AbortController/AbortSignal proporcionan cancelación.
Problemas comunes y soluciones
Un documento procesado espera globales de window. Fue creado para navegadores — proporcione el Window capa del entorno.
Los listeners de eventos registrados nunca se disparan. Dispatch necesita el bucle de eventos; impúlselo con WindowEventLoop.
Las ramificaciones lógicas en el user agent aparecen inesperadamente. El predeterminado Navigator identidad está en vigor — establézcala con set_default_user_agent().
Preguntas frecuentes
¿Se requiere la capa de entorno para el análisis?
No — es opcional; las capas de análisis y estilo son independientes de ella.
¿Qué tipos de eventos se modelan?
La familia estándar: UI, mouse, teclado, foco, entrada, popstate, hashchange, error y eventos personalizados.
¿Se persiste el Storage en disco?
Storage modela la superficie API; la persistencia queda a cargo de la aplicación incrustada.