假设:
使用xml.etree.ElementTree
<stream>
<max id="500">
<bar id="233" value="hell"/>
<bar id="234" value="hello"/>
</max>
</stream>
我想获取max元素中'value属性'的文本,其中键属性'id = 234'
我如何获得这个? 一个解决方案是,
for streams.findall('./ max / bar')中的fieldvalue:
xmlKeyValue = fieldvalue.get('id') if xmlKeyValue == "234": sol = fieldvalue.get('value') print sol
有没有更好的解决方案?单线解决方案?
答案 0 :(得分:1)
使用beautifulsoup的一种方式:
print(soup.find('stream').find('max').find('bar', attrs={'id':'234'})['value'])
它产生:
hello
答案 1 :(得分:1)