Я пытаюсь получить значение тега из нескольких идентичных тегов, кроме одного, которое я хочу игнорировать. Вот XML:получить несколько значений тегов, за исключением одного
<?xml version="1.0" encoding="UTF-8"?>
<package xmlns="http://apple.com/itunes/importer" version="film5.1">
<provider>studiocanal</provider>
<language>en-GB</language>
<video>
<crew>
<crew_member billing="top">
<display_name>John Doe</display_name>
<roles>
<role>Director</role>
<role>Screenwriter</role>
</roles>
</crew_member>
<crew_member billing="ordered">
<display_name>Harry Smith</display_name>
<roles>
<role>Screenwriter</role>
</roles>
</crew_member>
<crew_member billing="ordered">
<display_name>Jane Doe</display_name>
<roles>
<role>Screenwriter</role>
</roles>
</crew_member>
<crew_member billing="ordered">
<display_name>Mr. Kimbley</display_name>
<roles>
<role>Producer</role>
</roles>
</crew_member>
</crew>
</video>
</package>
Мне нужно получить значение не обращая внимания на 2-ую и поместить его в списке, я только хочу, чтобы получить первое значение из секции John Doe. Кажется, я не могу заставить его работать. Это мой текущий код, который создает и заполняет список, но у меня есть 5 ролей, но хочу только 4, пропустив второй. Heres мой текущий код:
from lxml import etree
tree = etree.fromstring(templateXml)
crewList2 = []
for element in root.xpath('//video/crew/crew_member/roles/role'):
crewList2.append(element)
Я пытаюсь применить вышеуказанное код, но он передается, если роль: так что crewList2.append (role [0] .text) никогда не будет выполнен. – speedyrazor
Вы уверены, что ваш код работал и печатал список 5-линов? – alecxe
извините, моя ошибка, приветствия. – speedyrazor