Come utilizzare il HTML Runtime Environment in Python
Alcune elaborazioni HTML presumono un ambiente di navigazione: una finestra, una posizione, archiviazione, dispatch degli eventi. Aspose.HTML FOSS per Python modella quell’ambiente in puro Python — Window, Navigator, Location, History, Storage, la famiglia Event, e osservatori — così tali documenti vengono elaborati lato server. Questa guida esplora lo strato, usando pip per l’installazione.
Guida passo-passo
Passo 1: Installa il pacchetto
git clone https://github.com/aspose-html-foss/Aspose.HTML-FOSS-for-Python.git
cd Aspose.HTML-FOSS-for-Python
pip install -e .Passo 2: Importa le classi richieste
from aspose_html.dom import Window, EventTarget, AbortControllerPasso 3: Conosci quando hai bisogno dell’ambiente
Parsing, CSSOM e layout non richiedono mai una window. Rivolgiti a questo livello solo quando l’elaborazione di un documento dipende dallo stato dell’ambiente — navigazione, storage, eventi o observer.
Passo 4: Usa gli oggetti dell’Ambiente
Window ancorra l’ambiente con WindowEventLoop che guida il dispatch; Location e History modellano lo stato di navigazione; Storage modella lo storage web chiave-valore; l’identità di Navigator è configurabile tramite set_default_user_agent(). Gli eventi dispatch attraverso EventTarget con la famiglia standard Event, e AbortController/AbortSignal forniscono la cancellazione.
Problemi comuni e soluzioni
Un documento elaborato si aspetta le window globals. È stato scritto per i browser — fornisci il Window livello dell’ambiente.
Gli ascoltatori di eventi registrati non si attivano mai. Dispatch richiede il ciclo degli eventi; guidalo con WindowEventLoop.
Rami logici basati sull’user agent in modo inatteso. Il valore predefinito Navigator identità è in vigore — impostala con set_default_user_agent().
Domande Frequenti
Il livello ambientale è necessario per il parsing?
No — è opzionale; i livelli di parsing e styling sono indipendenti da esso.
Quali tipi di evento sono modellati?
La famiglia standard: UI, mouse, tastiera, focus, input, popstate, hashchange, error e eventi personalizzati.
Lo Storage è persistito su disco?
Storage modella la superficie API; la persistenza è lasciata all’applicazione di embedding.