如何只检查XML文件的格式,跳过任何DTD检查?目前我正在使用XML SAX解析器中的以下代码:
from xml.sax.handler import ContentHandler
from xml.sax import make_parser
import glob
import os, os.path, sys
import pdb
import fileinput
path = os.getcwd()
for filenames in glob.glob(os.path.join(path, '*.xml')):
try:
parser = make_parser()
parser.setContentHandler(ContentHandler())
parser.parse(filenames)
print ("%s is well-formed" % filenames)
except Exception, e:
print ("%s is NOT well-formed! %s" % (filenames, e))
这适用于没有DTD声明的XML文件。但是,当XML确实有DTD声明时,它被声明为格式不正确。我想完全检查文件的格式,并忽略这个声明。
谢谢!