用Python中的ElementTree解析XML节点值

用Python中的ElementTree解析XML节点值,python,xml,elementtree,Python,Xml,Elementtree,我有以下XML: <part> <part_id>151</part_id> <part_name>BBa_B0034</part_name> <part_short_name>B0034</part_short_name> <part_short_desc>RBS (Elowitz 1999) -- defines RBS efficiency</part_short_desc>

我有以下XML:

<part>
 <part_id>151</part_id>
 <part_name>BBa_B0034</part_name>
 <part_short_name>B0034</part_short_name>
 <part_short_desc>RBS (Elowitz 1999) -- defines RBS efficiency</part_short_desc>
 <part_type>RBS</part_type>
 <release_status>Released HQ 2013</release_status>
 <sample_status>In stock</sample_status>
 <part_results>Works</part_results>
 <part_nickname/>
 <part_rating>1</part_rating>
 <part_url>http://parts.igem.org/Part:BBa_B0034</part_url>
 <part_entered>2003-01-31</part_entered>

151
BBa_B0034
B0034
RBS(Elowitz 1999)——定义RBS效率
苏格兰皇家银行
发布HQ 2013
有现货的
作品
1.
http://parts.igem.org/Part:BBa_B0034
2003-01-31
我想提取一些值

例如,我想从
输出
BBa\u B0034


如何使用ElementTree实现这一点?

正确的解析器需要正确的xml。供参考使用

见示例:

>>> import xml.etree.ElementTree as ET
>>> tree = ET.fromstring('<part> <part_id>151</part_id> <part_name>BBa_B0034</part_name>     <part_short_name>B0034</part_short_name> <part_short_desc>RBS (Elowitz 1999) -- defines RBSefficiency</part_short_desc> <part_type>RBS</part_type> <release_status>Released HQ 2013</release_status> <sample_status>In stock</sample_status> <part_results>Works</part_results> <part_nickname/> <part_rating>1</part_rating> <part_url>http://parts.igem.org/Part:BBa_B0034</part_url> <part_entered>2003-01-31</part_entered></part>')
>>> tree.findall('./part_name')[0].text
'BBa_B0034'
>将xml.etree.ElementTree作为ET导入
>>>tree=ET.fromstring('151 BBa_B0034 B0034 RBS(Elowitz 1999)--定义RBS效率RBS于HQ 2013在库存工程1中发布http://parts.igem.org/Part:BBa_B0034 2003-01-31')
>>>tree.findall('./部分名称')[0]。文本
“BBa_B0034”

您尝试过什么?你看过报纸了吗?尝试使用示例和编写代码,然后在事情没有按预期的方式运行时将您得到的内容发布到这里。重复:谢谢您,但当我尝试使用它时,我得到了“列表索引超出范围”-我正在解析web上的xml,而不是使用“fromstring”。检查您的xml文本。来自不同的文件。两者都是流。