selenium.webdriver.support.wait¶
Classes
|
Constructor, takes a WebDriver instance and timeout in seconds. |
- class selenium.webdriver.support.wait.WebDriverWait(driver: D, timeout: float, poll_frequency: float = 0.5, ignored_exceptions: Iterable[Type[Exception]] | None = None)[source]¶
Constructor, takes a WebDriver instance and timeout in seconds.
Attributes:¶
- driver
Instance of WebDriver (Ie, Firefox, Chrome or Remote) or
a WebElement
- timeout
Number of seconds before timing out
- poll_frequency
Sleep interval between calls
By default, it is 0.5 second.
- ignored_exceptions
Iterable structure of exception classes ignored during calls.
By default, it contains NoSuchElementException only.
Example:¶
>>> from selenium.webdriver.common.by import By >>> from selenium.webdriver.support.wait import WebDriverWait >>> from selenium.common.exceptions import ElementNotVisibleException >>> >>> # Wait until the element is no longer visible >>> is_disappeared = WebDriverWait(driver, 30, 1, (ElementNotVisibleException)) ... .until_not(lambda x: x.find_element(By.ID, "someId").is_displayed())
- until(method: Callable[[D], Literal[False] | T], message: str = '') T [source]¶
Wait until the method returns a value that is not False.
Calls the method provided with the driver as an argument until the return value does not evaluate to
False
.Parameters:¶
- method: callable(WebDriver)
A callable object that takes a WebDriver instance as an argument.
- message: str
Optional message for
TimeoutException
Return:¶
- object: T
The result of the last call to method
Raises:¶
- TimeoutException
If ‘method’ does not return a truthy value within the WebDriverWait
object’s timeout
Example:¶
>>> from selenium.webdriver.common.by import By >>> from selenium.webdriver.support.ui import WebDriverWait >>> from selenium.webdriver.support import expected_conditions as EC
# Wait until an element is visible on the page >>> wait = WebDriverWait(driver, 10) >>> element = wait.until(EC.visibility_of_element_located((By.ID, “exampleId”))) >>> print(element.text)
- until_not(method: Callable[[D], T], message: str = '') T | Literal[True] [source]¶
Wait until the method returns a value that is not False.
Calls the method provided with the driver as an argument until the return value does not evaluate to
False
.Parameters:¶
- method: callable(WebDriver)
A callable object that takes a WebDriver instance as an argument.
- message: str
Optional message for
TimeoutException
Return:¶
- object: T
The result of the last call to method
Raises:¶
- TimeoutException
If ‘method’ does not return False within the WebDriverWait
object’s timeout
Example:¶
>>> from selenium.webdriver.common.by import By >>> from selenium.webdriver.support.ui import WebDriverWait >>> from selenium.webdriver.support import expected_conditions as EC
# Wait until an element is visible on the page >>> wait = WebDriverWait(driver, 10) >>> is_disappeared = wait.until_not(EC.visibility_of_element_located( … (By.ID, “exampleId”)))