【发布时间】:2023-03-11 07:23:01
【问题描述】:
我想在 python 中解析一个大型 XML 文件(25 GB),并更改其中的一些元素。
我尝试了 xml.etree 中的 ElementTree,但第一步(ElementTree.parse)花费了太多时间。
我在某处读到 SAX 速度很快,不会将整个文件加载到内存中,而是用于解析而不是修改。
'iterparse' 也应该只用于解析而不是修改。
还有其他快速且节省内存的选项吗?
【问题讨论】:
-
试试 lxml,它有一些选项。
-
修改后是否要写回磁盘?还是你要对修改后的树进行操作?
-
我想找到一些感兴趣的元素并更改它们的属性值并将文件写入硬盘。
标签: python xml parsing sax elementtree