Come utilizzare il contesto JavaScript in Python
Il livello di scripting di Aspose.HTML FOSS per Python è esplicito e guidato dalle policy: nulla viene eseguito durante il parsing e, quando si valutano gli script, JSContext li esegue con l’accesso ai moduli controllato da ModuleRegistry e ModuleLoadPolicy. Questa guida spiega i componenti e il modello di errore, 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.js import JSContext, ModuleRegistry, ModuleLoadPolicyPasso 3: Comprendi il modello di valutazione
JSContext ospita la valutazione. I fallimenti dello script si manifestano come il JSEvaluationError tipizzato sul lato Python, mantenendo i bug dello script distinti dai bug della pipeline.
Passo 4: Controllo dell’accesso al modulo
ModuleRegistry mappa i specificatori dei moduli alle implementazioni — il registro è il sandbox. I moduli mancanti sollevano il ModuleNotFoundError tipizzato della libreria; ModuleLoadPolicy governa ciò che un contesto può caricare in generale.
Problemi comuni e soluzioni
La valutazione solleva ModuleNotFoundError. Lo script importa un modulo che non hai registrato — aggiungilo a ModuleRegistry oppure tratta l’errore come un segnale di policy.
Un errore di script blocca la pipeline. Catch JSEvaluationError al confine della valutazione.
Gli script accedono a più di quanto previsto. Tighten ModuleLoadPolicy e riduci il registro — i registri piccoli sono l’obiettivo.
Domande frequenti
Gli script vengono eseguiti durante il parsing?
No. Il parsing non esegue mai script; la valutazione è esplicita tramite JSContext.
Come mettere in sandbox il comportamento degli script?
Registra solo i moduli necessari in ModuleRegistry e limita il caricamento con ModuleLoadPolicy.
Come si manifestano gli errori degli script in Python?
Come eccezioni JSEvaluationError.