Образец XML:
<ParentTag TEST_ID="xxxxxx" ID="1">
<Child TagType="Manual">
<Manhrs Cost="100"/>
<Testing VAL="RANDOM STRING"/>
</Child>
<Child TagType="Automated">
<Manhrs Cost="10"/>
<Testing VAL="RANDOM STRING2"/>
</Child>
</ParentTag>
<ParentTag TEST_ID="YYYYYY" ID="1">
<Child TagType="Manual">
<Manhrs Cost="100"/>
<Testing VAL="RANDOM STRING"/>
</Child>
<Child TagType="Automated">
<Manhrs Cost="10"/>
<Testing VAL="RANDOM STRING2"/>
</Child>
</ParentTag>
<ParentTag TEST_ID="ZZZZZZZ" ID="1">
<Child TagType="Manual">
<Manhrs Cost="100"/>
<Testing VAL="RANDOM STRING"/>
</Child>
<Child TagType="Automated">
<Manhrs Cost="10"/>
<Testing VAL="RANDOM STRING2"/>
</Child>
</ParentTag>
поэтому, если я запустил:
TEST_ID = xxxxxx
for n in root.findall("ParentTag[@TEST_ID = '%s']//Child[@TagType = 'Automated']", % TEST_ID):
print("FOUND")
ОШИБКА: python2 .7 / xml / etree / ElementPath.py ", строка 224 , в prepare_predicate поднять SyntaxError («недопустимый предикат») SyntaxError: недопустимый предикат
Обратите внимание, что указанный выше код действительно работает в python 3, но мне нужно, чтобы он работал в Python 2.7 Если есть любая альтернатива, кроме многократного цикла в python 2, любезно предоставьте то же
Также я должен использовать xml .etree.ElementTree