xml解析错误特殊字符

时间:2013-12-11 07:27:06

标签: python xml

我有以下要用xml.dom.minidom模块

解析的xml
 <?xml version="1.0" encoding="UTF-8"?>
    <RootTag>
         <InnerTag>
              <MyValue>"< here is special char."</MyValue>
         </InnerTag>
 </RootTag>

我有以下代码片段用于解析上面的xml

import xml.dom.minidom
xml.dom.minidom.parse('input_xml')

但我得到以下错误:

     parser.Parse(buffer, 0)
xml.parsers.expat.ExpatError: not well-formed (invalid token): line 4, column 26

只有当我提供'&amp;'时才会出现上述错误或'&lt;'在MyValue标签中提供

所以,

如何解决此问题? 我不希望通过使用转义序列&lt;等来更改我的XML。 我想用“”(引号)

1 个答案:

答案 0 :(得分:3)

您的示例不是格式良好的XML。除标签之外的其他任何地方都不允许使用<。您的数据需要包装在CDATA中,或者转发为&lt;

<![CDATA[< here is special char.]]>