我有一堆
XML文件使用前缀但没有相应的命名空间声明.
像:
<tal:block tal:condition="foo"> ... </tal:block>
要么:
<div i18n:domain="my-app"> ...
我知道那些前缀来自哪里,我尝试了以下内容,但没有成功:
from lxml import etree as ElementTree ElementTree.register_namespace("i18n","http://namespaces.zope.org") ElementTree.register_namespace("tal","http://xml.zope.org/namespaces/tal") with open(path) as fp: tree = ElementTree.parse(fp)
但lxml仍然窒息:
lxml.etree.XMLSyntaxError: Namespace prefix i18n for domain on div is not defined,line 4,column 20
我知道我可以使用ElementTree.XMLParser(recover = True),但我想保留前缀,这种方法没有.
任何的想法?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。