Как проверить, какие веб-элементы действительно кликабельны? - PullRequest
0 голосов
/ 11 марта 2019

Я экспериментирую с методами обхода веб-страниц с помощью python и selenium webdriver в win10 и firefox. Я обнаружил следующую типичную страницу с всплывающим окном с просьбой дать согласие на использование файлов cookie.

https://irs.thsrc.com.tw/IMINT/

На странице есть только два кликабельных тега со следующими xpath.

// HTML / тело / DIV [2] / формы [1] / дел [2] / дел [1] / дел [1] / дел [1] / дел [1] / оболочка [1] / а [1]

// HTML / тело / DIV [2] / формы [1] / дел [2] / дел [1] / дел [1] / дел [2] / таблица [1] / тр [1] / тд [1] / вход [1]

Люди здесь предложили, что я могу сначала получить элемент через webdriver, а затем использовать два метода is_enabled () и is_displayed (), чтобы вместе проверить, является ли элемент кликабельным.
Однако, когда я получаю элементы со следующим утверждением:

e = WebDriverWait (драйвер, 5) .until (EC.element_to_be_clickable ((By.XPATH, xpath)))

Я обнаружил, что все элементы (даже те, которые находятся в тени), которые я получил с помощью приведенного выше оператора, включены и отображаются.
Но на самом деле в браузере можно было щелкать только два активных элемента во всплывающем окне сообщения.
Все остальные элементы были в тени и не могут быть нажаты (или активны).

Может кто-нибудь сказать мне, как получить правильную информацию о том, какие элементы на самом деле активны через некоторый API?

Большое спасибо.

Фарн

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...