gpt4 book ai didi

Python - 需要解析多个 XML 文件的所有元素。最快的解析器?

转载 作者:行者123 更新时间:2023-11-30 23:45:46 38 4
gpt4 key购买 nike

我有数百个小型(大约千字节)XML 文件,我需要在运行时使用其信息。这些 XML 文件中的所有数据对我来说都是有用的,而不仅仅是一些数据。

在运行时,当我需要其中之一的信息时,我可以构造一个 ElementTree,解析 XML 文件,并递归地迭代它 - 生成一个我保留的 Python 对象并丢弃 DOM。但是,如果我要发送 XML 文件并在运行时解析它们,我想知道是否应该考虑只进解析器而不是基于 DOM 的解析器。

考虑到这些数据在构建时是静态的,也许我应该将 XML 解析为 python 对象,对它们进行pickle,发送它们,并在运行时取消pickle它们。我还没有使用过 pickling - 它允许用户使用字典等吗?或者它适用于非常基本的数据结构?

希望我说得清楚 - 我在 XML 文件中有很多数据,我将在运行时使用它们。想知道什么(在运行时)访问这些数据最快。一旦访问过一次,我不介意在运行时将其保留在内存中。

如果有帮助的话可以分享一个数据示例(无论是 XML 格式还是我想要的 python 类/对象的样子)...

编辑:有些人提到了 lxml。我会去调查一下。有人有使用 lxml 与 un-pickling 解析 xml 数据的链接吗?

最佳答案

lxml 是最快的 Python XML 解析器。

除非大小有问题,否则我会将其保留为 XML 格式。如果速度是一个问题,请将您的 XML 文件合并在一起。

根据您的数据,将信息放入 SQLite 数据库可能也是一个不错的选择。

关于Python - 需要解析多个 XML 文件的所有元素。最快的解析器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9388461/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com