Selenium-Python, выбирающий элемент с пустым Span - PullRequest
0 голосов
/ 15 ноября 2018

используя xpath, у меня есть таблица, содержащая span в каждой ячейке, я пытаюсь выбрать кнопку с пустым <span> в столбце col2.Как вы можете выбрать его?

+-------+------+------+--------+
| col 1 | col2 | col3 | button |
+-------+------+------+--------+
| col   | f    | ch   | select |
| col   |      | ch   | select |
| col   | 2    | ch   | select |
| b     | n    | ch   | select |
+-------+------+------+--------+

я пробовал:

//span[text()="col"]/following::span/[text()='']following::span/[text()="ch"]/following::a[text()="select"][1]

и

//span[text()="col"]/following::span[normalize-space()]/following::span[text()="1"]/following::a[text()="select"][1]

но я не знаю, что делать на втором span/[text()=''] поскольку этот промежуток не содержит ничего.просто <span></span>

1 Ответ

0 голосов
/ 15 ноября 2018

Вы можете попробовать ниже XPath выбрать ссылку в строке таблицы, которая содержит только 2 непустых промежутка :

//tr[count(.//span[text()])=2]//a[.="Select"]

Если вам нужна ссылка в строке таблицы, второй интервал которой пуст :

//tr[(.//span)[2][not(text())]]//a[.="Select"]

или даже больше подходит для вашего случая:

//tr[(.//span)[1] = "col" and (.//span)[3] = "ch" and (.//span)[2][not(text())]]//a[.="Select"]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...