Приветствую!
Сразу оговорюсь, я только учусь, хотел для работы написать бота, который будет в автоматическом режиме взаимодействовать с сайтом:
https://eaist.mos.ru/login.html?redirect=https://e...
При нажатии на кнопку "Войти в систему" сразу вылетает 2 окна: принять куки и ввести логин и пароль. Код обоих окон скрыт в разных shadow dom и найти их элементы через Selenium у меня не получается, уже 4-й день борюсь с этой проблемой. Помогите пожалуйста с кодом, как нужно обратиться к кнопке "Понятно", чтобы нажать на нее?
Уже перечитал кучу статей, форумов, смотрел ролики, принцип, как это делается, вроде как понятен, но рабочий вариант для своего случая так и не смог написать :(
Заранее спасибо!
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from time import sleep
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--window-size=1000,900")
service = Service(executable_path=ChromeDriverManager().install())
driver = webdriver.Chrome(service=service, options=chrome_options)
wait = WebDriverWait(driver, 15, poll_frequency=1)
driver.get("https://eaist.mos.ru/login.html?redirect=https://eaist.mos.ru/panel.html")
# Кнопка: "Войти в систему"
LOGIN = ("xpath", "/html/body/div[1]/div/button")
# Нажимаю на кнопку "Войти в систему"
wait.until(EC.element_to_be_clickable(LOGIN)).click()
# Тут пытаюсь обратиться к тегу, в котором находится shadow-root, но уже на данном этапе
# получаю ошибку: NoSuchElementException: Message: no such element
# А кнопка о принятии находится еще глубже...
shadow_root = driver.find_element("css selector", '[version="1"]').shadow_root
sleep(10)
driver.close()