У меня есть XML, как показано ниже;
<root>
<entry>
<accession>A</accession>
<accession>B</accession>
<accession>C</accession>
<feature type="cross-link" description="sumo2">
<location>
<position position="15111992"/>
</location>
</feature>
<feature type="temp" description="blah blah sumo">
<location>
<position position="12345"/>
</location>
</feature>
</entry>
<entry>
<accession>X</accession>
<accession>Y</accession>
<accession>Z</accession>
<feature type="test" description="testing">
<location>
<position position="1"/>
</location>
</feature>
<feature type="cross-link" description="sumo hello">
<location>
<position position="11223344"/>
</location>
</feature>
</entry>
</root>
Мне нужно получить значение атрибута posiiton, тип функции которого — «перекрестная ссылка», а описание содержит слово сумо. Это то, что я пробовал до сих пор, что правильно дает мне те значения, тип функции которых «перекрестная ссылка», а описание содержит слово сумо.
from xml.dom import minidom
xmldoc = minidom.parse('P38398.xml')
itemlist = xmldoc.getElementsByTagName('feature')
for s in itemlist:
feattype = s.attributes['type'].value
description = s.attributes['description'].value
if "SUMO" in description:
if "cross-link" in feattype:
print feattype+","+description
Как я могу извлечь значение позиции, если у меня есть тип функции как «перекрестная ссылка» и описание, содержащее слово «сумо»?