Jakiego XPath mogę użyć, aby wybrać dowolną kategorię z określonym atrybutem nazwy i dowolnego autora węzła potomnego z określoną wartością.
Próbowałem różnych wariantów ścieżki poniżej bez powodzenia:
//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>
Zastosowanie :
albo użyj:
Dobrą zasadą jest unikanie używania
//
pseudo-operatora, gdy tylko jest to możliwe, ponieważ jego ocena może być zazwyczaj bardzo powolna.Również:
jest równa:
dlatego zaleca się użycie tego ostatniego.
źródło
pytanie nie jest jasne, ale co rozumiem, musisz wybrać kategorię, która ma atrybut nazwy i powinna mieć autora potomnego z określoną wartością, popraw mnie, jeśli pracuję
tutaj jest ścieżka xpath
źródło
Możesz zastosować wiele warunków w xpath za pomocą i, lub
źródło
Tutaj możemy zrobić również w ten sposób:
//category [@name='category name']/author[contains(text(),'authorname')]
LUB
Aby poznać szczegółowo XPATH, odwiedź szczegółową ścieżkę selenu xpath
źródło