Python中文
首页
教程
问答
标签
搜索
登录
注册
通过XML读取XML文件时出错。
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我试图用python读取XML文件xml.etree但有时对于某些文件,我在解析文件时会出现内存错误。我的XML文件大小是912Mb,这个问题与文件大小有关吗?在</p> <p>代码:</p> <pre><code>from xml.etree import ElementTree with open('F:\\Reports\\Logs\\AppPerfect_States\\TG1_GM\\Result_TG1_V16.xml', 'rt') as f1: tree = ElementTree.parse(f1) </code></pre> <p>错误:</p> ^{pr2}$ <p>更新: 根据很多建议,我尝试了lxml</p> <p>代码:</p> <pre><code> from lxml import etree context = etree.iterparse('F:\\Reports\\Logs\\AppPerfect_States\\TG1_GM\\Result_TG1_V16.xml',tag = "document") for event, element in context: for child in element: print child.tag, child.text element.clear() </code></pre> <p>错误:</p> <pre><code>C:\Python27\python.exe "F:/Py Projects/V16_AUTO/test1/xmlparsingtest1.py" Traceback (most recent call last): File "F:/Py Projects/V16_AUTO/test1/xmlparsingtest1.py", line 3, in <module> for event, element in context: File "iterparse.pxi", line 207, in lxml.etree.iterparse.__next__ (src\lxml\lxml.etree.c:126137) lxml.etree.XMLSyntaxError: unknown error, line 7530730, column 33 </code></pre> <p>更新2: 试过芹菜树</p> <p>代码:</p> <pre><code>import xml.etree.cElementTree as etree xmL = 'F:\\Reports\\Logs\\Result_TG1_V16.xml' context = etree.iterparse(xmL, events=("start", "end")) context = iter(context) event, root = context.next() for event, elem in context: if event == 'TasksReportNode': print elem.tag print elem.text root.clear() </code></pre> <p>错误:</p> <pre><code>Exception MemoryError: in ignored Exception MemoryError: in ignored Exception MemoryError: in ignored Exception MemoryError: in ignored Exception MemoryError: in ignored MemoryError </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<pre><code>import xml.etree.ElementTree as ET tree = ET.ElementTree(file="xyz.xml") for elem in tree.iter(): print elem.attrib </code></pre> <p>尝试读取此文件。可能会有帮助。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
(编辑)背景2+均值漂移跟踪?
3 回答
(网络爬虫)如何从新闻网站获取新闻段落的文本
5 回答
(置换)列表的唯一组合
4 回答
(美丽的soap4,)AttributeError:“非类型”对象没有属性“获取文本”
4 回答
(聊天室)使用套接字通常只允许一个地址(协议/网络地址/端口)
2 回答
(自动)在Pycharm/Python中的=后缩进
7 回答
(自动Py到Exe和Python)找不到“googleapipythonclient”发行版,该发行版是应用程序所必需的
8 回答
(自动操作)write()和do for循环的Odoo问题
3 回答
(自定义)百分位MSE损失函数
6 回答
(自定义用户)createsuperuser TypeError:hasattr():属性名必须是字符串
6 回答
(节点)警告:检测到可能的EventEmitter内存泄漏。添加了11个消息侦听器。使用emitter.setMaxListeners()增加limi
9 回答
(若变量中有字符串)语句未筛选出数据
6 回答
(英语、Perl、Python、Ruby)在代码片段的基础上进行比较?
6 回答
(范围(1,36),7)和+条件下的所有组合
4 回答
(范围(3),范围(3))值错误:要解压缩的值太多(预期为2)
3 回答
(蟒蛇) 平均分配数字
9 回答
(行、列):数据帧的值
4 回答
(行、列)形式的最小值
9 回答
(解决)导入PYBID11/C++编译模块不工作
1 回答
(记忆有效)将“排序”作为生成器实现
1 回答