etree incomplete child.text

时间:2015-06-01 15:47:29

标签: python xml lxml elementtree

当我想要访问非常长的XML元素的文本内容时,我遇到了麻烦。 我正在使用xml.etree库。

我要解析的xml元素的大小约为400,000个字符,我只能得到 当我这样做时,大约30 000个字符:

from lxml import etree

context = etree.iterparse(xml_document, events=['start','end'])

for action, element in context:
    if element.tag.endswith('tag_name'):
        if action=="start":
            result = element.text

有谁知道如何确保etree完全读取元素的文本?

谢谢

1 个答案:

答案 0 :(得分:0)

好的,我终于找到了自己问题的答案......

只需使用"结束"事件而不是"开始"如果你想确定etree读取标签的所有文本内容:

from lxml import etree

context = etree.iterparse(xml_document, events=['end'])

for action, element in context:
    if element.tag.endswith('tag_name'):
        if action=="end":
            result = element.text