您的位置:宽带测速网 > 编程知识 > lxml如何捕获XML文档的验证错误

lxml如何捕获XML文档的验证错误

2025-07-04 09:34来源:互联网 [ ]

可以使用lxml的etree模块中的XMLSchema和RelaxNG类来捕获XML文档的验证错误。下面是一个示例代码:

from lxml import etree# 定义XML Schemaschema = etree.XMLSchema(etree.parse('schema.xsd'))# 解析XML文档xml_doc = etree.parse('document.xml')# 验证XML文档try:schema.assertValid(xml_doc)print("XML document is valid.")except etree.DocumentInvalid as e:print("XML document is invalid:")for error in e.error_log:print(error)

在上面的示例中,我们首先定义了一个XML Schema,并解析了要验证的XML文档。然后,我们使用XMLSchema类的assertValid方法来验证XML文档。如果XML文档是无效的,会抛出DocumentInvalid异常,我们可以通过error_log属性来获取详细的验证错误信息。