我有一些要验证的 XML 文件,我必须使用 Python 进行验证。我尝试使用 lxml 的 XSD 对其进行验证。但我只收到一个首先发生的错误,但我需要所有错误和不匹配...
我有一些要验证的 XML 文件,我必须使用 Python 来验证。我尝试使用 lxml 的 XSD 来验证它。但我只得到一个错误,它首先发生,但我需要 XML 文件中的所有错误和不匹配。有什么方法可以设法使用 lxml 获取所有错误的列表吗?或者还有其他 Python 解决方案吗?
由于几个错误,提供的解决方案不再起作用。在 xmlschema 上应用 assertValid 之前,您必须按如下方式指定它:
try:
xmlschema_doc = lxml.etree.parse(filename)
xmlschema = lxml.etree.XMLSchema(xmlschema_doc)
xmlschema.assertValid(elem_tree)
except lxml.etree.ParseError as e:
raise lxml.etree.ParserError(str(e))
except lxml.etree.DocumentInvalid as e:
if ignore_errors:
raise lxml.etree.ValidationError("The Config tree is invalid with error
message:\n\n" + str(e))