使用Python对大数据进行XML解析

我正在尝试使用Python解析XML文件.但是问题在于XML文件大小约为30GB.因此,执行需要花费几个小时:

tree = ET.parse('Posts.xml')

在我的XML文件中,根有数百万个子元素.有什么方法可以使其更快?我不需要所有的孩子来解析.即使是第一个100,000,也可以.我需要做的只是为解析深度设置一个限制.

解决方法:

您将需要一种XML解析机制,该机制不会将所有内容都加载到内存中.

您可以使用ElementTree.iterparse,也可以使用Sax.

这是一个包含一些XML processing tutorials的Python页面.

更新:正如@marbu在评论中所说,如果您使用ElementTree.iterparse,请确保use it in such a way在处理完元素后清除内存中的元素.

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念