Вы можете использовать xpath, например, root.xpath("//article[@type='news']")
Это выражение xpath вернет список всех <article/>
элементов с атрибутами "type" со значением "news".Затем вы можете перебрать его, чтобы сделать то, что вы хотите, или передать его куда угодно.
Чтобы получить только текстовое содержимое, вы можете расширить xpath следующим образом:
root = etree.fromstring("""
<root>
<articles>
<article type="news">
<content>some text</content>
</article>
<article type="info">
<content>some text</content>
</article>
<article type="news">
<content>some text</content>
</article>
</articles>
</root>
""")
print root.xpath("//article[@type='news']/content/text()")
, и это будетвывод ['some text', 'some text']
.Или, если вы просто хотите элементы содержимого, это будет "//article[@type='news']/content"
- и т. Д.