from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as ec def get_clickable_element(driver, By, element_id): return WebDriverWait(driver, timeout=50).until( ec.element_to_be_clickable((By, element_id)) ) def get_element(driver, By, element_id): return WebDriverWait(driver, timeout=50).until( ec.visibility_of_element_located((By, element_id)) ) def get_invisible_element(driver, By, element_id): return WebDriverWait(driver, timeout=50).until( ec.presence_of_element_located((By, element_id)) ) def get_title(driver, title): return WebDriverWait(driver, timeout=50).until( ec.title_contains(title) )