#python #selenium #popup
#python #selenium #всплывающее окно
Вопрос:
Я использую Selenium с Python на веб-странице с JavaScript. Скрипт выполняется до тех пор, пока во всплывающем окне не появится запрос на щелчок либо для согласия, либо для поиска дополнительных опций. HTML-код всплывающего окна исчезает, если щелкнуть по какой-либо опции вручную. Был бы признателен за некоторые рекомендации о том, как автоматически нажать кнопку «Согласиться».
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Chrome(executable_path='C:/A38/chromedriver_win32/chromedriver.exe')
driver.implicitly_wait(30)
driver.maximize_window()
# Navigate to the application home page
driver.get("https://www.sportinglife.com/racing/results/2020-11-23")
Ответ №1:
Нажать на кнопку с текстом СОГЛАСЕН. Сначала induct ожидает загрузки страницы, а затем ожидает, пока элемент станет кликабельным.
driver.get('https://www.sportinglife.com/racing/results/2020-11-23')
wait=WebDriverWait(driver, 10)
wait.until(EC.element_to_be_clickable((By.XPATH, "//button[text()='AGREE']"))).click()
Импорт
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
Ответ №2:
Это поможет:
driver.find_element_by_xpath('//*[@id="qc-cmp2-ui"]/div[2]/div/button[2]').click()