Какой XPath можно использовать для выбора любой категории с указанным атрибутом имени и любого автора дочернего узла с указанным значением.
Я пробовал разные варианты пути ниже, но безуспешно:
//quotes/category[@name='Sport' and author="James Small"]
XML:
<?xml version="1.0" encoding="utf-8"?>
<quotes>
<category name="Sport">
<author>James Small<quote date="09/02/1985">Quote One</quote><quote date="11/02/1925">Quote nine</quote></author>
</category>
<category name="Music">
<author>Stephen Swann
<quote date="04/08/1972">Quote eleven</quote></author>
</category>
</quotes>
Используйте :
или используйте:
Хорошее правило - стараться по возможности избегать использования
//
псевдооператора, поскольку его оценка обычно очень медленная.Также:
эквивалентно:
поэтому рекомендуется использовать последний.
источник
вопрос не ясен, но что я понимаю, вам нужно выбрать категорию, которая имеет атрибут name и должна иметь дочернего автора с указанным значением, поправьте меня, если я беспокоюсь
вот xpath
источник
Вы можете применить несколько условий в xpath, используя и, или
источник
Здесь мы можем сделать так же:
//category [@name='category name']/author[contains(text(),'authorname')]
ИЛИ
Чтобы узнать XPATH подробно, пожалуйста, посетите Selen XPath подробно
источник