我试图将此文本值写入XML标记中,类似于这样:
每当我将这个值作为文本设置到这个标签时,它会生成像这样的内容。
我尝试避免在代码中使用转义字符
<Parameter name="name"><![CDATA[xyzvalue]]></Parameter>
每当我将这个值作为文本设置到这个标签时,它会生成像这样的内容。
<Parameter name="name"><![CDATA[xyzvalue]]></Parameter>
我尝试避免在代码中使用转义字符
ET.SubElement(parameters, "Parameter", name="id").text = unescape("<![CDATA[xyzvalue]]>")
我该如何避免像这样将内容写入XML文件?我需要在XML中避免转义字符。
以下是我的完整代码:
map = ET.Element("Map")
parameters = ET.SubElement(map, "Parameters")
ET.SubElement(parameters, "Parameter", name="bounds").text = "-180,-85.05112877980659,180,85.05112877980659"
ET.SubElement(parameters, "Parameter", name="center").text = "0,0,2"
ET.SubElement(parameters, "Parameter", name="format").text = "png"
ET.SubElement(parameters, "Parameter", name="minzoom").text = "0"
ET.SubElement(parameters, "Parameter", name="maxzoom").text = "22"
ET.SubElement(parameters, "Parameter", name="scale").text = "1"
ET.SubElement(parameters, "Parameter", name="metatile").text = "2"
ET.SubElement(parameters, "Parameter", name="id").text = unescape("<![CDATA[xyzvalue]]>")
ET.SubElement(parameters, "Parameter", name="_updated").text = "1552288036000"
ET.SubElement(parameters, "Parameter", name="name").text = "<![CDATA[xyzvalue]]>"
ET.SubElement(parameters, "Parameter", name="tilejson").text = "<![CDATA[2.0.0]]>"
ET.SubElement(parameters, "Parameter", name="scheme").text = "<![CDATA[xyz]]>"
indent(map)
tree = ET.ElementTree(map)
tree.write("plotfinder_tiles.xml", xml_declaration=True, encoding='utf-8', method="xml")
这个问题不同于如何使用ElementTree输出CDATA,因为我在元素创建时遇到了这个问题,而不是在XML创建后再美化/删除。