Как использовать "не" в xpath? Я хочу написать что-то вроде: //a[not contains(@id, 'xx')] (что означает, что все ссылки, в которых атрибут 'id' не содержит строку 'xx') Я не могу найти правильный синтаксис. Ответ 1 not() - это функция в xpath (в отличие от оператора), поэтому //a[not(contains(@id, 'xx'))] Ответ 2 вы можете использовать функцию not(expression) или expression != true() Ответ 3 Ни один из этих ответов не работал у меня для python. Я решил этим a[not(@id='XX')] Также вы можете использовать или условие в вашем xpath оператором |. Например, a[not(@id='XX')]|a[not(@class='YY')] Иногда нам нужен элемент, который не имеет класса. Таким образом, вы можете сделать как a[not(@class)]
Ответ 3 Ни один из этих ответов не работал у меня для python. Я решил этим a[not(@id='XX')] Также вы можете использовать или условие в вашем xpath оператором |. Например, a[not(@id='XX')]|a[not(@class='YY')] Иногда нам нужен элемент, который не имеет класса. Таким образом, вы можете сделать как a[not(@class)]