अक्सर पूछे जाने वाले प्रश्न
लाइसेंसिंग एवं ओपन सोर्स
क्या लाइसेंस Aspose.HTML FOSS for Python उपयोग किया जाता है?
लाइब्रेरी MIT लाइसेंस के तहत जारी की गई है। पूर्ण पाठ इस रूप में प्रदान किया जाता है LICENSE फ़ाइल में GitHub रिपॉजिटरी.
क्या मैं इसे व्यावसायिक उत्पादों में उपयोग कर सकता हूँ?
हाँ। MIT लाइसेंस व्यावसायिक उपयोग, संशोधन, पुनर्वितरण और सबलाइसेंसिंग की अनुमति देता है। एकमात्र आवश्यकता यह है कि कॉपीराइट नोटिस और लाइसेंस पाठ को महत्वपूर्ण प्रतियों के साथ रखा जाए।
स्थापना एवं आवश्यकताएँ
मैं लाइब्रेरी को कैसे स्थापित करूँ, और कौन से Python संस्करण समर्थित हैं?
इंस्टॉल करें git clone https://github.com/aspose-html-foss/Aspose.HTML-FOSS-for-Python.git के साथ। लाइब्रेरी को Python 3.10 या बाद का संस्करण चाहिए; वर्तमान रिलीज़ 0.1.0 है।
क्या कोई मूल निर्भरताएँ हैं?
नहीं। कार्यान्वयन शुद्ध Python है — कोई ब्राउज़र इंजन नहीं, कोई संकलित एक्सटेंशन नहीं — इसलिए यह Windows, Linux और macOS पर समान रूप से काम करता है, जिसमें CI रनर और कंटेनर शामिल हैं।
API Usage
मैं HTML को दस्तावेज़ में कैसे पार्स करूँ?
HTMLDocument.parse() का उपयोग पूर्ण पृष्ठों के लिए करें या HTMLDocument.parse_fragment() का उपयोग आंशिक मार्कअप के लिए करें। प्रोग्रामेटिक निर्माण के लिए, Document नोड फैक्ट्री है:
from aspose_html.dom import Document
doc = Document()
el = doc.create_element("div")
el.set_attribute("id", "bar")
doc.append_child(el)मैं CSS को कैसे लागू करूँ और परिणामी शैली को कैसे पढ़ूँ?
स्टाइलशीट टेक्स्ट को CSSStyleSheet.replace_sync() से पार्स करें, इसे Document.attach_style_sheet() से संलग्न करें, और परिणामित आउटपुट को 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"))क्या cascade specificity और !important को सही ढंग से संभालता है?
हाँ। गणना किए गए मान selector specificity का पालन करते हैं (ID > class > type), inline घोषणाएँ author नियमों से ऊपर होती हैं, और !important author नियम non-important inline घोषणाओं से ऊपर होते हैं। विरासत पैरेंट से चाइल्ड तक प्रवाहित होती है उन inheritable गुणों के लिए।
क्या मैं tokenizer और tree builder को सीधे उपयोग कर सकता हूँ?
हां — Tokenizer.tokenize() standards token stream उत्पन्न करता है, TreeBuilder.run() ट्री निर्माण करता है, और parse_html() पूरे pipeline को एक ही कॉल में लपेटता है।
मैं URLs और character encodings के साथ कैसे काम करूँ?
URL.parse() और URL.can_parse() WHATWG-शैली की URL हैंडलिंग प्रदान करते हैं जिसमें URLSearchParams query strings के लिए है। कच्चे बाइट्स के लिए, detect_encoding() एन्कोडिंग, एक confidence level, और decoded टेक्स्ट लौटाता है।
ज्ञात सीमाएँ
क्या कोई API मौजूद है लेकिन लागू नहीं की गई है?
कुछ ही सदस्यों की घोषणा की गई है लेकिन वे वर्तमान में कार्यात्मक नहीं हैं, जिसमें CSSRule.type, CSSRule.css_text, और HTMLImageElement.decode शामिल हैं। ज्ञान मॉडल में limitations.md फ़ाइल इनका ट्रैक रखती है; इन पर निर्भर न करें।
क्या लाइब्रेरी पृष्ठों को रेंडर करती है या अन्य स्वरूपों में परिवर्तित करती है?
नहीं। वर्तमान रिलीज़ पार्सिंग, DOM हेरफेर, CSS शैली गणना, लेआउट संरचनाएँ, URLs, और एन्कोडिंग पर केंद्रित है। यह फ़ॉर्मेट रूपांतरण या इमेज/PDF रेंडरिंग प्रदान नहीं करता।
क्या JavaScript पार्सिंग के दौरान स्वचालित रूप से निष्पादित होता है?
नहीं। पार्सिंग कभी स्क्रिप्ट नहीं चलाती है। स्क्रिप्ट मूल्यांकन स्पष्ट है और JSContext के माध्यम से ऑप्ट-इन किया जाता है, जबकि मॉड्यूल लोडिंग ModuleRegistry और ModuleLoadPolicy द्वारा नियंत्रित होती है।