Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save AlgorithmAlchemy/8b51641e1ee09faf0dcc45654a402968 to your computer and use it in GitHub Desktop.
Save AlgorithmAlchemy/8b51641e1ee09faf0dcc45654a402968 to your computer and use it in GitHub Desktop.
Используем WebDriverWait для ожидания появления элемента на странице перед взаимодействием с ним. Это помогает избежать ситуаций, когда элемент еще не загружен или не доступен для клика.
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
def click_element(driver, by, value, timeout=10):
"""Ожидание элемента и нажатие на него."""
try:
element = WebDriverWait(driver, timeout).until(
EC.element_to_be_clickable((by, value))
)
element.click()
log(f"Элемент {value} успешно нажат.", color="green")
except Exception as e:
log(f"Ошибка при нажатии на элемент {value}: {e}", color="red")
# Пример использования
click_element(driver, By.ID, "btnLogin")
click_element(driver, By.XPATH, "//input[@value='Restart']")
click_element(driver, By.ID, "yesbtn")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment