Python Selenium Webdriver.implicitly_wait(seconds)

212 阅读1分钟

这个方法可以配置Python Selenium web驱动,使其在放弃搜索页面上的某个元素之前最多等待N秒。

默认情况下,implicitly_wait被设置为0,这意味着如果一个元素不是立即可用的,在加载页面时,如果没有找到预期的HTML元素,它将立即失败。

建议将 implicitly wait 设置为一个合理的延迟,以便有足够的时间在页面中放置所有元素。

由于现在大多数网站都使用客户端渲染,这个参数是非常重要的,所以你不应该忘记设置它。

例子

设置 implicitly_wait,等待元素出现的时间最长为30秒。

url = "https://somewebsite.com/"

wd.get(url)
# Setting implicitly_wait to 30 seconds
wd.implicitly_wait(30)

# searching for an input field
search_field = wd.find_element_by_id("id_ac_descrizione")
search_field.send_keys("Nativita")
searchButton = wd.find_element_by_id("sc_b_pesq_bot")
searchButton.click()
table = wd.find_element_by_class_name("scGridTabela")]

资源

selenium-python.readthedocs.io/waits.html