我试图使用Python解析xml文件,但是我有一些可能包含xml数据的标记。例如:
<code>
<?xml version="1.0" encoding="utf-8"?>
</code>
我想这样写CDATA标记:
<code><![CDATA[
<?xml version="1.0" encoding="utf-8"?>
]]>
</code>
我试过(用lxml):
a = etree.fromstring(data)
for e in a.findall("code"):
e.text = etree.CDATA(etree.tostring(e))
但我得到:
<code><![CDATA[<code><?xml version="1.0" encoding="utf-8"?></code>]]>
<?xml version="1.0" encoding="utf-8"?>
</code>
(我是发帖后注册的OP)
与 e、 文本=etree.CDATA酒店(电子文本)
我明白了
为了
替换代码找到
<code>
元素并将其序列化为该元素的新文本。不过,似乎只想包含<code>
元素的子元素。你知道吗尝试将
e.text
设置为CDATA(e.text)
,而不是设置为序列化e
的结果。你知道吗相关问题 更多 >
编程相关推荐