Cara Menggunakan Konteks JavaScript di Python
Lapisan scripting Aspose.HTML FOSS untuk Python bersifat eksplisit dan berorientasi kebijakan: tidak ada yang dijalankan selama parsing, dan ketika Anda mengevaluasi skrip, JSContext menjalankannya dengan akses modul yang dikendalikan oleh ModuleRegistry dan ModuleLoadPolicy. Panduan ini menjelaskan komponen-komponen dan model kegagalan, menggunakan pip untuk instalasi.
Panduan Langkah demi Langkah
Langkah 1: Instal Paket
git clone https://github.com/aspose-html-foss/Aspose.HTML-FOSS-for-Python.git
cd Aspose.HTML-FOSS-for-Python
pip install -e .Langkah 2: Impor Kelas yang Diperlukan
from aspose_html.js import JSContext, ModuleRegistry, ModuleLoadPolicyLangkah 3: Pahami Model Evaluasi
JSContext menyelenggarakan evaluasi. Kegagalan skrip muncul sebagai JSEvaluationError yang bertipe pada sisi Python, menjaga bug skrip tetap terpisah dari bug pipeline.
Langkah 4: Kontrol Akses Modul
ModuleRegistry memetakan penunjuk modul ke implementasi — registri adalah sandbox. Modul yang hilang memicu ModuleNotFoundError bertipe milik perpustakaan; ModuleLoadPolicy mengatur apa yang dapat dimuat oleh suatu konteks secara keseluruhan.
Masalah Umum dan Solusinya
Evaluasi memicu ModuleNotFoundError. Skrip mengimpor modul yang belum Anda daftarkan — tambahkan ke ModuleRegistry atau perlakukan kesalahan sebagai sinyal kebijakan.
Kegagalan skrip menyebabkan pipeline crash. Catch JSEvaluationError pada batas evaluasi.
Skrip mengakses lebih dari yang dimaksudkan. Tighten ModuleLoadPolicy dan perkecil registri — registri kecil adalah tujuannya.
Pertanyaan yang Sering Diajukan
Apakah skrip dijalankan selama parsing?
Tidak. Parsing tidak pernah mengeksekusi skrip; evaluasi bersifat eksplisit melalui JSContext.
Bagaimana cara saya mengisolasi perilaku skrip?
Daftarkan hanya modul yang dibutuhkan di ModuleRegistry dan batasi pemuatan dengan ModuleLoadPolicy.
Bagaimana kesalahan skrip muncul di Python?
Sebagai pengecualian JSEvaluationError.