Ответ 1
Все title
узлы с zipcode
или book
node как родительские:
Версия 1:
//title[parent::zipcode|parent::book]
Версия 2:
//bookstore/book/title|//bookstore/city/zipcode/title
Как я могу сделать с XPath:
//bookstore/book/title or //bookstore/city/zipcode/title
Просто //title
не будет работать, потому что у меня также есть //bookstore/magazine/title
p.s. Я видел много или примеров, но главным образом с атрибутами или одной структурой node.
Все title
узлы с zipcode
или book
node как родительские:
Версия 1:
//title[parent::zipcode|parent::book]
Версия 2:
//bookstore/book/title|//bookstore/city/zipcode/title
Если вы хотите выбрать только один из двух узлов с оператором union, вы можете использовать это решение:
(//bookstore/book/title | //bookstore/city/zipcode/title)[1]
Это элемент имеет два xpath. Затем вы можете написать два xpath, как показано ниже:
xpath1
| xpath2
Например:
//input[@name="username"] | //input[@id="wm_login-username"]