1
我是新来的蟒蛇,我试图解析使用SAX 一个XML文件,而不验证它。解析XML使用SAX/Python的+没有验证
我的XML文件的头是:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE n:document SYSTEM "schema.dtd">
<n:document....
,我已经试过与Python 2.5.2解析它:
from xml.sax import make_parser, handler
import sys
parser = make_parser()
parser.setFeature(handler.feature_namespaces,True)
parser.setFeature(handler.feature_validation,False)
parser.setContentHandler(handler.ContentHandler())
parser.parse(sys.argv[1])
,但我得到了一个错误:
python doc.py document.xml
(...)
File "/usr/lib/python2.5/urllib2.py", line 244, in get_type
raise ValueError, "unknown url type: %s" % self.__original
ValueError: unknown url type: schema.dtd
我不想SAX解析器寻找一个模式。我错在哪里? 谢谢!
这并没有解决问题。我仍然得到ValueError未知的url类型。也许在python3中有所改变。 – ThatAintWorking 2014-09-26 18:57:34
@ThatAintWorking假设你有像'<!DOCTYPE富SYSTEM“foo.dtd”'尝试创建在同一目录DTD文件。该名称应该是“foo.dtd”。至少,它应该包含'<!ELEMENT FOO \ n(巴)>'你可能需要用一个实际的回车替换“\ n”。 – 16num 2016-11-08 14:23:48
@ 16num对不起,我甚至不记得这个问题的上下文了。 – ThatAintWorking 2016-11-09 18:33:25