溫馨提示×

lxml怎么捕獲Schematron驗證的錯誤

小億
95
2024-05-15 15:33:18
欄目: 編程語言

在lxml中捕獲Schematron驗證的錯誤,可以使用lxml.etree.schematron模塊的from_schematron函數來加載Schematron規則,然后使用lxml.etree.Schematron對象的assertValid方法來驗證XML文檔。如果驗證失敗,會拋出lxml.etree.DocumentInvalid異常,可以在異常中捕獲驗證錯誤信息。

下面是一個示例代碼:

from lxml import etree

# 加載Schematron規則
schema_doc = etree.parse('your_schematron_schema.sch')
schema = etree.Schematron(schema_doc)

# 驗證XML文檔
xml_doc = etree.parse('your_xml_doc.xml')
try:
    schema.assertValid(xml_doc)
    print('XML文檔通過Schematron驗證')
except etree.DocumentInvalid as e:
    print('XML文檔未通過Schematron驗證:')
    print(e)

在上面的代碼中,首先加載Schematron規則并創建Schematron對象,然后使用assertValid方法驗證XML文檔。如果驗證失敗,會捕獲DocumentInvalid異常,并打印錯誤信息。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女