กรณีการใช้งาน
Aspose.HTML FOSS สำหรับ Python มุ่งเป้าไปที่งาน HTML ฝั่งเซิร์ฟเวอร์ที่ไม่มีเบราว์เซอร์หรือไม่ต้องการเบราว์เซอร์ เหล่านี้คือสถานการณ์ที่ API ถูกสร้างขึ้นรอบ ๆ.
ทำความสะอาดและเขียนใหม่ HTML ที่จัดเก็บไว้
บริการแบ็กเอนด์ที่รับ HTML ที่ผู้ใช้ส่งมา จะทำการพาร์สด้วย HTMLDocument.parse() ปรับโครงสร้างผ่านการดำเนินการ Document และ Element และทำการซีเรียลไลซ์ผลลัพธ์ — พร้อมการกู้คืนข้อผิดพลาดตามมาตรฐานที่ดูดซับ markup ที่ผิดรูปใด ๆ ที่เข้ามา.
การตรวจสอบ Markup ที่สร้างขึ้นใน CI
ชุดทดสอบตรวจสอบโครงสร้างในลักษณะเดียวกับตัวอย่างของฐานความรู้นี้: สร้างหรือพาร์สต้นไม้ แล้วตรวจสอบแอตทริบิวต์ ลูกไม้ และ — โดยเฉพาะ — สไตล์ที่คำนวณได้ผ่าน Element.get_computed_style() เพื่อให้การถดถอยของสไตล์ชีตทำให้การทดสอบล้มเหลวแทนที่จะเป็นการผลิต.
การคำนวณสไตล์โดยไม่มีเบราว์เซอร์
เครื่องมืออีเมลและตัวทำความสะอาดต้องการทราบสไตล์ที่องค์ประกอบจริง ๆ แก้ไขได้ ชั้น CSSOM ให้คำตอบด้วย cascade ที่แท้จริง — รวมถึงความจำเพาะ, !important, และการสืบทอด — ใน Python แบบบริสุทธิ์ โดยไม่มีเบราว์เซอร์แบบ headless ให้จัดหา.
การนำเข้าเอกสารเก่า
ไฟล์จัดเก็บมาถึงเป็นไบต์ในรูปแบบการเข้ารหัสที่ไม่ทราบ. detect_encoding() จัดประเภทพวกมัน (BOM และการสแกนล่วงหน้าเมตา), get_canonical_name() ทำให้ความวุ่นวายของป้ายกำกับเป็นมาตรฐาน, และพฤติกรรมการกู้คืนของตัวแยกวิเคราะห์จัดการกับมาร์คอัปที่อายุหลายทศวรรษ.
เครื่องมือระดับโทเค็น
ลินเทอร์และการทำความสะอาดแบบผ่านล่วงหน้าบริโภคผลลัพธ์ของ Tokenizer.tokenize() โดยตรง, ตรวจสอบแอตทริบิวต์ของ StartTagToken ก่อนที่โครงสร้างต้นไม้ใดจะถูกสร้าง.
การประมวลผลสคริปต์ที่ควบคุม
เอกสารที่ต้องการสคริปต์จะทำงานภายใต้ JSContext โดยการเข้าถึงโมดูลถูกจำกัดโดย ModuleRegistry และ ModuleLoadPolicy — สคริปต์ตามความจำเป็น, แซนด์บ็อกซ์โดยการออกแบบ.