Troubleshooting
إصلاحات للمشكلات التي تظهر غالبًا مع Aspose.HTML FOSS لـ Python، مُجَمَّعة حسب الطبقة.
الأنماط والتسلسل الهرمي
قاعدة ورقة الأنماط لا تُحدث أي تأثير. يجب إرفاق الورقة بـ Document.attach_style_sheet() before Element.get_computed_style() تُسمى. الأوراق غير المرفقة لا تشارك أبدًا في السلسلة.
إعلان مضمن يخسر أمام قاعدة ورقة الأنماط. قواعد المؤلف المعلّمة !important تفوق الإعلانات المضمنة غير المهمة. تحقق من CSSStyleDeclaration.get_property_priority().
قاعدتان تتعادلان والفوز يكون للقاعدة “الخاطئة”. التعادل في التحديد المتساوي يُحلّ حسب ترتيب القواعد — القواعد اللاحقة تفوز. قارن الأطر بـ specificity() عند الشك.
القيمة الموروثة لا تصل إلى العنصر الفرعي. القيم المحلية دائمًا تتجاوز القيم الموروثة، وليس كل خاصية تُورّث. اقرأ القيمة المحسوبة للوالد أولاً لتأكيد ما يجب أن ينتقل للأسفل.
التحليل وDOM
يتم تحليل العلامات المشوهة دون حدوث خطأ. سلوك المعايير: بناء الشجرة يحدد الاسترداد لكل حالة خطأ. إذا كنت تحتاج إلى اكتشاف المشكلات، فافحص تدفق الرموز عبر Tokenizer.tokenize().
محتوى الجدول يظهر خارج جدوله. تقنية foster parenting تنقل محتوى الجدول غير في موضعه، تمامًا كما تفعل المتصفحات. أصلح التداخل المصدر.
get_element_by_id() لا يرجع شيئًا. يجب أن يحمل العنصر id الخاصية وأن يُرفق بشجرة ذلك المستند.
Encodings
تظهر علامة ترتيب البايت في النص المفكك. استخدم detect_encoding() — يزيل بايتات BOM من result.text. يترك الترميز اليدوي بايتات BOM داخلها.
تُقارن علامتان للترميز نفسه على أنها غير متساوية. قم بتطبيعهما باستخدام get_canonical_name(); latin1 and iso-8859-1 كلاهما windows-1252 قانونيًا.
Scripts
تثير التقييم ModuleNotFoundError. السكريبت يستورد وحدة غير موجودة في ModuleRegistry. سجّله أو اعتبر الخطأ كأن بيئتك التجريبية تعمل كما هو مقصود.
فشل السكريبت يوقف خط الأنابيب. Catch JSEvaluationError عند حد التقييم — هو الإشارة المكتوبة لفشل الجانب السكريبت.