1.下面的Python代码将任意XML格式文件转化为JSON格式(字典)。除Python自带的模块外,不需要依赖其他任何第三方库。
2.XML文件的读取使用Python自带的XML模块。
3.关键代码如下:
import xml.etree.ElementTree as ET import json def xml2json(node): if not isinstance(node, ET.Element): raise Exception("node format error.") if len(node) == 0: return node.tag, node.text data = {} temp = None for child in node: key, val = xml2json(child) if key in data: if type(data[key]) == list: data[key].append(val) else: temp = data[key] data[key] = [temp, val] else: data[key] = val return node.tag, data
4.测试代码如下:
def main(): path = "./xx.xml" tree = ET.parse(path) node = tree.getroot() tag, data = xml2json(node) f = open("./xx.json", "w", encoding="utf-8") f.write(json.dumps(data, ensure_ascii=False, indent=4)) f.close()
转发自:https://www.cnblogs.com/ben-/p/16968316.html