当前位置: 首页 > 面试题库 >

使用ElementTree将xml转换为字典

壤驷经国
2023-03-14
问题内容

我正在寻找使用ElementTree的XML到字典解析器的工具,我已经找到了一些,但是它们不包括属性,在我的情况下,我有很多属性。


问题答案:
def etree_to_dict(t):
    d = {t.tag : map(etree_to_dict, t.iterchildren())}
    d.update(('@' + k, v) for k, v in t.attrib.iteritems())
    d['text'] = t.text
    return d

称为

tree = etree.parse("some_file.xml")
etree_to_dict(tree.getroot())

只要您实际上没有属性text,它就可以工作;如果您这样做,则更改函数正文中的第三行以使用其他键。此外,您不能与此一起处理混合内容。

(在LXML上测试。)



 类似资料:
  • 问题内容: 每当我致电时,都会收到以下错误消息: 还有其他方法可以将ElementTree对象转换为XML字符串吗? 追溯: 问题答案: 对象没有方法。挂断该电话,该电话将正常工作: 仅当有实例时才需要使用。 其他说明: 这将产生一个 bytestring ,在Python 3中是该类型。 如果必须有一个对象,则有两个选择: 从UTF-8解码结果字节值: 使用; 这样可以避免编码/解码周期: 如果

  • XML输入文件: XML输入文件转换为XML输出文件。将XML输入文件的firstName、middleName和lastName标签合并为XML Ouput文件的name标签,将XML输入文件的address1、address2、city、state和pincode标签合并为XML Ouput文件的address标签。 我几乎转换了代码,但我在这里与empId作斗争。我已经在XSLT文件中手动输

  • 问题 你想使用一个Python字典存储数据,并将它转换成XML格式。 解决方案 尽管 xml.etree.ElementTree 库通常用来做解析工作,其实它也可以创建XML文档。 例如,考虑如下这个函数: from xml.etree.ElementTree import Element def dict_to_xml(tag, d): ''' Turn a simple dict of ke

  • 我想将XML转换为JSON(具体地说,是OAI-PMH响应)。我目前正在使用这个节点。JSXML2JS,但问题是JSON非常冗长,有很多嵌套和数组级别,即使只有一个元素作为子元素,并且永远不会超过一个。问题是,不知道XML文件的模式,因此必须保守。 我的问题是,是否有任何其他(最好是JavaScript)代码可以使用XML架构来指导转换过程?因此,如果架构定义了XML的类型和结构,那么JSON就会

  • 问题内容: 我有一个JSON文件,在此JSON文件中使用解析器将其转换为XML格式,然后写回xml文件 我在Groovy中找不到有关如何执行此操作的任何示例 如果我有如下所示的JSON: 然后,应将其转换为如下所示的XML: 我一直在寻找JSON到XML转换代码 问题答案: 如果您使JSON有效(将名称四舍五入,并且在初始块中加一个逗号),则可以执行此操作以将其转换(专门针对此示例) 我不知道将x

  • 问题内容: 我有一组CSV数据要转换为XML。代码看起来不错,但是输出不够完美。它忽略了一些列,因为它们没有值,并且产生了很长的XML数据行,而不是破坏它。 这是我的CSV数据示例: 而我的代码: 当对以上数据执行此代码时,将产生: 我本人以这种形式安排它,但是输出结果很长。产生的输出应为: 问题答案: 我同意Kennet。 我只是添加了 这在元素之间添加了新行,并允许缩进。 更新 首先,我们要介