在lxml中进行XML有效性检查可以通过DTD或Schema来实现。以下是使用DTD和Schema进行XML有效性检查的示例:
from lxml import etree
# 创建DTD
dtd = etree.DTD('example.dtd')
# 解析XML文件
tree = etree.parse('example.xml')
# 检查XML有效性
if dtd.validate(tree):
print('XML is valid.')
else:
print('XML is invalid.')
from lxml import etree
# 创建Schema
schema = etree.XMLSchema(etree.parse('example.xsd'))
# 解析XML文件
tree = etree.parse('example.xml')
# 检查XML有效性
if schema.validate(tree):
print('XML is valid.')
else:
print('XML is invalid.')
在这两个示例中,'example.dtd’和’example.xsd’是DTD和Schema文件的路径,'example.xml’是要检查的XML文件的路径。首先加载DTD或Schema文件,然后解析XML文件并进行有效性检查。