March 27, 2024
Selenium: Проверка наличия, определенного элемента на странице
Чтобы узнать, что вход в панель управления выполнен успешно, обычно используется проверка наличия определенного элемента на странице, который является уникальным для страниц после успешной авторизации. В вашем коде вы уже используете такой подход, проверяя наличие элемента с текстом "Dashboard" на странице:
try:
dashboard_element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, "//h1[contains(text(), 'Dashboard')]")))
print("Авторизация успешна")
except:
print("Ошибка авторизации")Этот код работает следующим образом:
- После клика по кнопке входа, скрипт ожидает до 10 секунд появления элемента
<h1>с текстом "Dashboard" на странице. Это означает, что пользователь успешно авторизовался и перешел на главную страницу панели управления. - Если такой элемент найден, скрипт выводит сообщение "Авторизация успешна".
- Если элемент не найден в течение 10 секунд (например, из-за неправильного логина или пароля), то выполняется блок
except, и скрипт выводит сообщение "Ошибка авторизации".
Для улучшения этого подхода и увеличения надежности проверки, вы можете использовать дополнительные критерии, например, проверку URL-адреса страницы после авторизации или поиск других уникальных элементов, характерных только для авторизованных пользователей.
if "dashboard" in driver.current_url:
print("Авторизация успешна")
else:
print("Ошибка авторизации")Этот код проверяет, содержит ли текущий URL-адрес страницы слово "dashboard", что может быть признаком успешной авторизации.