Unescape“&”编辑XML \ HTML

时间:2015-11-03 09:43:53

标签: python html xml elementtree

我有一个接受名为label的参数的函数。然后,此标签用于使用ElementTree替换元素“assignedNode”的内容。

该函数循环遍历目录中的所有xml文件,并将“label”参数写入元素内容。

我的“标签”参数包含和“&”符号,但当ET将其写入xml文件时,它显示为“& amp”。

有人可以告诉我如何解读这个角色并强迫它写下“&”符号

这是我的代码:

def apply_label(label):

clone_path = os.getcwd()
for root, dirs, files in os.walk(clone_path):
  for f in files:
    try:
        tree = ET.ElementTree(file=f)
        root = tree.getroot()
        for assignedNode in root.iter("assignedNode"):
            assignedNode.text = label
            tree = ET.ElementTree(root)
            with open(f, "w") as a:
                tree.write(a)
    except :
       pass

1 个答案:

答案 0 :(得分:0)

下面是XML中的转义字符列表:

https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references

&是一个转义字符,ElementTree解析器设计为默认转义此字符

参考:What characters do I need to escape in XML documents?