python - 有没有一种很好的方法可以在 python 中处理非常大的 XML 文件?
问题描述
维基百科完整的 xml 转储非常庞大,并且其中的iterparse
方法ElementTree
不能很好地处理有 3 个单独的数据字段都标记为<id>
.
因此,我产生了将维基百科 XML 的一个可用部分从和之间的所有内容中提取出来的想法,<page>
并将其</page>
传递给ElementTree
应该能够处理嵌套的部分。这个想法是在遇到 XML 页面标签时设置一个真/假标志来控制流并将 XML 块作为字符串发送出去。
这是我的代码,它没有做我认为应该做的事情!谁能告诉我出了什么问题?
非常感谢!
page = None
page_element = ''
for line in fh:
line.rstrip()
if line.startswith(' <page>'):
page = True
print('True')
elif line.startswith(' </page>'):
page = False
print('False')
elif page == True:
lines to a string
else:
pass string to ElementTree
clear string
解决方案
推荐阅读
- c# - 实体框架案例陈述
- elasticsearch - 如何在kibana中实时在地图上绘制地理坐标
- python - 为什么我的蛮力代数求解器不起作用?
- java - 如何使用 Java DecimalFormat 强制小数点?
- azure - 使用 HCL/Terraform 的 azurerm_virtual_machine 块中的“admin_ssh_key”问题
- r - R Markdown - PDF 中的参考章节编号
- r - 如何在实时数据框中保存 sql 数据库?闪亮的
- python - 在 DataFrame Pandas 中将字符串转换为数字
- elasticsearch - 配置 ElasticSearch Magento 2.4 - 在您的集群中找不到活动节点
- ios - 将设备升级到 iOS 14 后,我们无法下载 iOS 企业应用程序