Veelgestelde vragen

Veelgestelde vragen

Licenties & Open Source

Welke licentie gebruikt Aspose.HTML FOSS voor Python?

De bibliotheek wordt uitgebracht onder de MIT License. De volledige tekst wordt meegeleverd als de LICENSE bestand in de GitHub-repository.

Kan ik het gebruiken in commerciële producten?

Ja. De MIT-licentie staat commercieel gebruik, wijziging, herdistributie en sublicentiëring toe. De enige voorwaarde is het behouden van de auteursrechtvermelding en de licentietekst bij substantiële kopieën.

Installatie & Vereisten

Hoe installeer ik de bibliotheek, en welke Python versies worden ondersteund?

Installeer met git clone https://github.com/aspose-html-foss/Aspose.HTML-FOSS-for-Python.git. De bibliotheek vereist Python 3.10 of hoger; de huidige release is 0.1.0.

Zijn er native afhankelijkheden?

Nee. De implementatie is pure Python — geen browserengine, geen gecompileerde extensies — zodat hij zich identiek gedraagt op Windows, Linux en macOS, inclusief CI-runners en containers.

API Usage

Hoe parse ik HTML naar een document?

Gebruik HTMLDocument.parse() voor volledige pagina’s of HTMLDocument.parse_fragment() voor gedeeltelijke markup. Voor programmatische constructie is Document de node-factory:

from aspose_html.dom import Document
doc = Document()
el = doc.create_element("div")
el.set_attribute("id", "bar")
doc.append_child(el)

Hoe pas ik CSS toe en lees ik de resulterende stijl?

Parse stylesheet-tekst met CSSStyleSheet.replace_sync(), koppel het met Document.attach_style_sheet(), en lees het opgeloste resultaat met Element.get_computed_style():

from aspose_html.cssom import CSSStyleSheet
sheet = CSSStyleSheet()
sheet.replace_sync("#bar { color: blue }")
doc.attach_style_sheet(sheet)
print(el.get_computed_style().get_property_value("color"))

Behandelt de cascade specificiteit en !important correct?

Ja. Berekende waarden volgen selector-specificiteit (ID wint van class wint van type), inline-declaraties hebben voorrang boven auteursregels, en !important auteursregels hebben voorrang boven niet-belangrijke inline-declaraties. Overerving loopt van ouder naar kind voor overerfbare eigenschappen.

Kan ik de tokenizer en tree builder direct gebruiken?

Ja — Tokenizer.tokenize() genereert de standaard token-stroom, TreeBuilder.run() voert boomconstructie uit, en parse_html() verpakt de volledige pijplijn in één aanroep.

Hoe werk ik met URL’s en tekencoderingen?

URL.parse() en URL.can_parse() bieden WHATWG-stijl URL-afhandeling met URLSearchParams voor query-strings. Voor ruwe bytes geeft detect_encoding() de codering, een vertrouwensniveau en gedecodeerde tekst terug.

Bekende beperkingen

Zijn er API’s aanwezig maar niet geïmplementeerd?

Er is een klein aantal leden gedeclareerd maar momenteel niet functioneel, waaronder CSSRule.type, CSSRule.css_text en HTMLImageElement.decode. Het limitations.md-bestand in het kennismodel houdt deze bij; vermijd erop te vertrouwen.

Rendert de bibliotheek pagina’s of converteert hij naar andere formaten?

Nee. De huidige release richt zich op parsing, DOM-manipulatie, CSS stijlberekening, lay-outstructuren, URL’s en encoderingen. Het bevat geen formatconversie of afbeelding/PDF-rendering.

Wordt JavaScript automatisch uitgevoerd tijdens het parsen?

Nee. Parsen voert nooit scripts uit. Scriptevaluatie is expliciet en opt-in via JSContext, waarbij het laden van modules wordt geregeld door ModuleRegistry en ModuleLoadPolicy.

Zie ook

 Nederlands