Когда вы делаете el.text
, это всегда даст вам простой текст content
.
Чтобы увидеть сериализованный элемент, попробуйте tostring()
вместо:
el = etree.XML('<tag><![CDATA[content]]></tag>')
print(etree.tostring(el).decode())
это напечатает:
<tag>content</tag>
Для сохранения CDATA необходимо использовать XMLParser()
с strip_cdata=False
:
parser = etree.XMLParser(strip_cdata=False)
el = etree.XML('<tag><![CDATA[content]]></tag>', parser=parser)
print(etree.tostring(el).decode())
Будет напечатано:
<tag><![CDATA[content]]></tag>
Этого должно быть достаточно для выполнения вашего требования ". Я хочу убедиться в тесте, что содержимое упаковано в CDATA ".