Обработка CDATA с помощью lxml включает в себя создание синтаксического анализатора с подходящей декларацией, но как насчет XSLT? Например:lxml XSLT удаляет CDATA при обработке XML
from lxml import etree
parser = etree.XMLParser(strip_cdata=False)
tree = etree.parse('sample_with_cdata.xml', parser)
transform = etree.XSLT(etree.parse('dupe.xsl'))
xml_out = transform(tree)
xml_out.write('processed.xml')
Если я обрабатывать XML-файл с CDATA через LXML процессор XSLT, все CDATA раздели. Как я могу сказать XSLT-процессору оставить CDATA как есть?
PS. FYI, добавив тот же парсер к etree.XSLT
не изменил результат
Мой XML - это RSS, а элемент описания содержит CDATA для базового форматирования. – theta