logo头像
Snippet 博客主题

XML的有效性的检测

XML文档的结构良好性验证,结构良好的xml文档,需要遵守下面这些规则:

  1. 所有开始标签必须有对应的结束标签
  2. 元素可以嵌套,但是不可以重叠
  3. 有且只能有一个根元素
  4. 属性值必须使用引号
  5. 一个元素不能有两个同样属性名字的属性
  6. 注释不能出现在标签内部
  7. 没有转义的” <” 或者” $”不能出现在元素和属性的字符中

如何检查XML文档良构?

方法一

以ElementTree模块为例,直接使用parse方法。如果不报错,这表示该XML是良构的

1
2
3
4
5
6
7
from xml.etree import ElementTree as ET  
try:
ET.parse('test.xml')
print '这是一个良构的XML文档'
except Exception,e:
print '这不是一个良构的XML文档'
print '可能原因:',e
方法二

如果希望获取更加详细信息,可使用lxml模块:

1
2
3
4
5
6
7
import  lxml.etree as ET  
try:
ET.parse('test.xml')
print '这是一个良构的XML文档'
except Exception,e:
print '这不是一个良构的XML文档'
print '可能原因:',e

评论系统未开启,无法评论!