Cum să utilizați contextul JavaScript în Python
Stratul de scripting al Aspose.HTML FOSS pentru Python este explicit și bazat pe politici: nimic nu se execută în timpul parsării, iar când evaluați scripturi, JSContext le rulează cu acces la module controlat de ModuleRegistry și ModuleLoadPolicy. Acest ghid explică componentele și modelul de eșec, utilizând pip pentru instalare.
Ghid pas cu pas
Pasul 1: Instalați pachetul
git clone https://github.com/aspose-html-foss/Aspose.HTML-FOSS-for-Python.git
cd Aspose.HTML-FOSS-for-Python
pip install -e .Pasul 2: Importați clasele necesare
from aspose_html.js import JSContext, ModuleRegistry, ModuleLoadPolicyPasul 3: Înțelegeți modelul de evaluare
JSContext găzduiește evaluarea. Defecțiunile scriptului apar ca JSEvaluationError tipizat pe partea Python, menținând bug-urile de script distincte de cele ale pipeline-ului.
Pasul 4: Controlează accesul la module
ModuleRegistry mapează specificatorii de module la implementări — registrul este zona de testare. Modulele lipsă declanșează ModuleNotFoundError tipizat al bibliotecii; ModuleLoadPolicy guvernează ce poate încărca un context în totalitate.
Probleme comune și remedieri
Evaluarea ridică ModuleNotFoundError. Scriptul importă un modul pe care nu l-ați înregistrat — adăugați-l la ModuleRegistry sau tratați eroarea ca un semnal de politică.
Un eșec al scriptului blochează pipeline-ul. Catch JSEvaluationError la limita de evaluare.
Scripturile accesează mai mult decât era prevăzut. Tighten ModuleLoadPolicy și micșorați registrul — registrele mici sunt esențiale.
Întrebări frecvente
Rulează scripturile în timpul parsării?
Nu. Parsarea nu execută niciodată scripturi; evaluarea este explicită prin JSContext.
Cum izolez comportamentul scriptului?
Înregistrează doar modulele necesare în ModuleRegistry și restricționează încărcarea cu ModuleLoadPolicy.
Cum apar erorile de script în Python?
Ca excepții JSEvaluationError.