Выполните повторный щелчок по элементу в селене - PullRequest
1 голос
/ 12 июня 2019

Я нашел нужные мне элементы на веб-странице и назвал их по-своему.Есть ли способ просто вызвать элемент по имени позже в тестовом скрипте и щелкнуть по нему, не находя элемент снова?

Попытка разбить find_element_by / .click () на две отдельные строки, поэтому я знаю, что это может ссылаться на имя, которое я присвоил элементу.

costs = browser.find_element_by_css_selector('g:nth-child(2) > g > circle')
costs.click()

revenue = browser.find_element_by_css_selector('#chart-div-2 g:nth-child(1) > rect')
revenue.click()

(затем после этих шагов и нескольких похожих попыток я добавил в ....)

costs.click()
revenue.click()

Сообщение:

'устаревшая ссылка на элемент: элемент не прикреплен к документу страницы', но я не ушел со страницы.

Чего мне не хватает

1 Ответ

1 голос
/ 12 июня 2019

Вам просто нужно обратиться к ним еще раз, так как элемент устарел.

Итак, в вашем случае:

costs = browser.find_element_by_css_selector('g:nth-child(2) > g > circle')
costs.click()
revenue = browser.find_element_by_css_selector('#chart-div-2 g:nth-child(1) > rect')
revenue.click()

# DO SOME STUFF

costs = browser.find_element_by_css_selector('g:nth-child(2) > g > circle')
costs.click()
revenue = browser.find_element_by_css_selector('#chart-div-2 g:nth-child(1) > rect')
revenue.click()

Подробнее о Исключение для устаревшего эталонного элемента .

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