У меня есть страница (https://goldapple.ru/), на которой я хочу проанализировать некоторые данные о косметике. Однако когда я открываю веб-страницу, появляется всплывающая кнопка, и я хочу нажать левую кнопку «Да, верно». К сожалению, появляется ошибка TimeoutException(message, screen, stacktrace), поэтому проблема в том, что машина не видит кнопку.
HTML-код веб-страницы:
Код: Выделить всё
Да, верно
Код: Выделить всё
#import some dependencies
from selenium.webdriver import Chrome
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from time import sleep
Код: Выделить всё
#actual code
browser = Chrome()
url = "https://goldapple.ru/"
browser.get(url)
wait = WebDriverWait(browser, 10)
wait.until(
EC.element_to_be_clickable((By.XPATH, "//*[@id='__layout']/div/div[5]/div[2]/div[1]/div/div[2]/button[1]"))
).click()
- Я использовал WebDriverWait для подождите некоторое время, чтобы появилась всплывающая кнопка.
- Я использовал условие element_to_be_clickable.
- XPATH использовался в качестве ссылки на кнопку, поэтому должно быть с адресом проблем нет
- На веб-странице нет теневого корня
Если кто-то решит проблему, это будет расценено (по крайней мере мной) как прорыв в Selenium
Подробнее здесь: https://stackoverflow.com/questions/786 ... pup-button