Hoe de JavaScript-context te gebruiken in Python
De scripttlaag van Aspose.HTML FOSS voor Python is expliciet en beleidsgestuurd: er wordt niets uitgevoerd tijdens het parseren, en wanneer je scripts evalueert, voert JSContext ze uit met moduletoegang gecontroleerd door ModuleRegistry en ModuleLoadPolicy. Deze gids legt de onderdelen en het faalmodel uit, met gebruik van pip voor installatie.
Stapsgewijze Gids
Stap 1: Installeer het pakket
git clone https://github.com/aspose-html-foss/Aspose.HTML-FOSS-for-Python.git
cd Aspose.HTML-FOSS-for-Python
pip install -e .Stap 2: Importeer vereiste klassen
from aspose_html.js import JSContext, ModuleRegistry, ModuleLoadPolicyStap 3: Begrijp het evaluatiemodel
JSContext hostt evaluatie. Scriptfouten komen naar voren als de getypte JSEvaluationError aan de Python-kant, waardoor scriptbugs gescheiden blijven van pijplijnbugs.
Stap 4: Toegang tot modules controleren
ModuleRegistry mappt modulespecificaties naar implementaties — het register is de sandbox. Ontbrekende modules veroorzaken de getypte ModuleNotFoundError van de bibliotheek; ModuleLoadPolicy bepaalt wat een context überhaupt mag laden.
Veelvoorkomende problemen en oplossingen
Evaluatie veroorzaakt ModuleNotFoundError. Het script importeert een module die je niet hebt geregistreerd — voeg deze toe aan ModuleRegistry of behandel de fout als een beleidsignaal.
Een scriptfout crasht de pipeline. Catch JSEvaluationError bij de evaluatiegrens.
Scripts hebben toegang tot meer dan bedoeld. Tighten ModuleLoadPolicy en verklein het register — kleine registers zijn het doel.
Veelgestelde vragen
Worden scripts uitgevoerd tijdens het parseren?
Nee. Parseren voert nooit scripts uit; evaluatie gebeurt expliciet via JSContext.
Hoe sandbox ik het gedrag van scripts?
Registreer alleen de benodigde modules in ModuleRegistry en beperk het laden met ModuleLoadPolicy.
Hoe verschijnen scriptfouten in Python?
Als JSEvaluationError uitzonderingen.