5
Ich bin Batch-Konvertierung viele XML-Dateien, ändern ihre Zeichenkodierungen auf UTF-8:LXML tötet meine CDATA Abschnitte
with open(source_filename, "rb") as source:
tree = etree.parse(source)
with open(destination_filename, "wb") as destination:
tree.write(destination, encoding="UTF-8", xml_declaration=True)
Leider ist es meine CDATA
Abschnitte zu zerstören und zu entkommen sie nur statt.
Quelle:
<d><![CDATA[áÌÀøÅàùÑÄéú ëÌÄé áÈàÅùÑ éäå''ä ðÄùÑÀôÌÈè <small><small>(ùí ëå èæ)</small></small>
Destination:
<d>בְּרֵאשִׁית כִּי בָאֵשׁ יהו''ה נִשְׁפָּט <small><small>(שם כו טז)</small></small>
Gibt es eine Einstellung, die ich festlegen, welche sagen, wird es allein meine CDATA-Abschnitte zu verlassen? Ich benutze hauptsächlich LXML, um die Zeichencodierung zu ändern und den XML-Header richtig zu schreiben.
Relevante doc: http://lxml.de/api.html#cdata –