Troubleshooting
계층별로 구분된 Aspose.HTML FOSS for 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. 수동 디코딩은 이를 그대로 남깁니다.
같은 인코딩에 대한 두 라벨은 서로 다르게 비교됩니다. 두 개를 다음으로 정규화하십시오 get_canonical_name(); latin1 and iso-8859-1 둘 다 windows-1252 정식으로.
Scripts
평가에서 ModuleNotFoundError가 발생합니다. 스크립트가 존재하지 않는 모듈을 가져옵니다 ModuleRegistry. 등록하거나 오류를 샌드박스가 의도대로 동작하는 것으로 간주하십시오.
스크립트 실패가 파이프라인을 중단시킵니다. Catch JSEvaluationError 평가 경계에서 — 이는 스크립트 측 실패를 나타내는 타입된 신호입니다.