Python Selenium 中的自定义等待条件
Python Selenium 中的自定义等待条件是通过继承 WebDriverWait 类并重写 call 方法实现的。以下是一个示例,用于检查页面是否包含特定的文本:
from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC class text_present_in_page(object): def __init__(self, text): self.text = text def __call__(self, driver): return self.text in driver.page_source # 使用自定义等待条件 wait = WebDriverWait(driver, 10) wait.until(text_present_in_page('pidancode.com'))
在上述示例中,我们定义了一个名为 text_present_in_page 的自定义等待条件。在初始化方法中,我们传递了一个文本参数,并在 call 方法中检查页面是否包含该文本。如果页面包含该文本,该方法将返回 True,否则返回 False。
在使用自定义等待条件时,我们只需要将其传递给 WebDriverWait 类的 until 方法即可实现等待行为。在本例中,我们等待页面中包含文本“pidancode.com”。
相关文章