Java在Python中的FluentWait
在java selenium-
webdriver软件包中,有一个FluentWait
类:
每个FluentWait实例都定义了等待条件的最长时间,以及检查条件的频率。此外,用户可以配置等待以在等待时忽略特定类型的异常,例如在页面上搜索元素时的NoSuchElementExceptions。
换句话说,它不仅仅是隐式和显式wait,它还使您可以更好地控制元素的等待。它可能非常方便,并且肯定有用例。
python selenium软件包中是否有类似的东西,还是我应该自己实现?
(我已经浏览了Waits的文档-那里什么也没有)。
回答:
我相信您可以使用Python做到这一点,但是它并不像FluentWait类那样简单地打包。您提供的文档中没有涉及到其中的一些内容。
WebDriverWait类具有用于超时,poll_frequency和ignore_exceptions的可选参数。因此,您可以在那里提供。然后将其与“预期条件”结合使用,以等待元素出现,可点击等。这是一个示例:
from selenium import webdriverfrom selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import *
driver = webdriver.Firefox()
# Load some webpage
wait = WebDriverWait(driver, 10, poll_frequency=1, ignored_exceptions=[ElementNotVisibleException, ElementNotSelectableException])
element = wait.until(EC.element_to_be_clickable((By.XPATH, "//div")))
显然,您可以将wait / element合并为一个语句,但是我发现以这种方式可以看到在哪里实现。
以上是 Java在Python中的FluentWait 的全部内容, 来源链接: utcz.com/qa/401397.html