首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python ElementTree:解析字符串并获取ElementTree实例

Python ElementTree:解析字符串并获取ElementTree实例
EN

Stack Overflow用户
提问于 2011-12-20 18:33:39
回答 2查看 20.6K关注 0票数 22

我有一个包含从http请求返回的XML数据的字符串。

我使用ElementTree解析数据,然后递归地搜索元素。

根据这个问题,只有在result类型为ElementTree而不是Element类型的情况下,才能使用ElementTree进行递归搜索。

现在,用于解析字符串的xml.etree.ElementTree.fromstring()返回一个Element对象,而用于解析文件的xml.etree.ElementTree.parse()返回一个ElementTree对象。

那么,我的问题是:如何解析字符串并获得一个ElementTree 实例?(不像写入临时文件那样疯狂)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-20 18:41:03

当您使用ElementTree.fromstring()时,您要返回的基本上是树的根,所以如果您创建一个像这个ElementTree.ElementTree(root)这样的新树,您将得到您想要的。

因此,为了更清楚地:

代码语言:javascript
复制
from xml.etree import ElementTree
tree = ElementTree.ElementTree(ElementTree.fromstring(<your_xml_string>))

或者:

代码语言:javascript
复制
from xml.etree.ElementTree import fromstring, ElementTree
tree = ElementTree(fromstring(<your_xml_string>))
票数 32
EN

Stack Overflow用户

发布于 2011-12-20 21:49:09

将字符串转换为类似文件的对象,并使用ElementTree.parse

代码语言:javascript
复制
from xml.etree import ElementTree
from cStringIO import StringIO

tree = ElementTree.parse(StringIO(string))
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8580234

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档