Jak napisać zapytanie XPath, aby dopasować dwa atrybuty?

143

Następujące pytanie:

<div id="id-74385" class="guest clearfix" style="z-index: 999;">

Podane powyżej,

Jeśli chcę wyrażenie XPath z sprawdzaniem zarówno identyfikatora, jak i klasy, czy możemy to zrobić w / 'i' WARUNEK JAK:

//div[@id='id-74385'] and div[@class='guest clearfix']

Czy to właściwy sposób? Moja egzekucja się nie udaje ... Proszę o pomoc!

shola
źródło

Odpowiedzi:

211
//div[@id='..' and @class='...]

powinien załatwić sprawę. Oznacza to wybranie divoperatorów, które mają oba atrybuty wymaganej wartości.

Warto skorzystać z jednego z internetowych stanowisk testowych XPath, aby wypróbować różne rzeczy.

Brian Agnew
źródło
99

lub //div[@id='id-74385'][@class='guest clearfix']

zhangyangyu
źródło
22

Dodając do odpowiedzi Briana Agnewa.

Możesz także to zrobić //div[@id='..' or @class='...]i możesz mieć wewnątrz wyrażenia w nawiasach //div[@id='..' and (@class='a' or @class='b')].

CodeMonkey
źródło