如何无限期地等待元素在python硒中可点击?

时间:2020-05-14 09:45:15

标签: python selenium selenium-chromedriver

此功能在Puppeteer中可用,它允许将0作为无限期传递。但是Selenium中没有。你们有没有自定义功能?

P.S。我需要此功能是因为我想在服务器上测试某些内容,并且超时可以是可变的,例如有时可能需要30秒或有时30m。

1 个答案:

答案 0 :(得分:2)

Selenium中没有无限等待的概念。因为这不是等待无限时间(1分钟,1小时,1天,1个月,1年……等等)的理想情况。

应在特定时间内满足特定条件。因此,您可以做的一件事就是提供最大的阈值等待时间。 Selenium将连续检查您的元素是否可单击,直到达到最大阈值为止。

根据Selenium文档:

ExplicitWait允许您的代码停止程序执行或冻结程序。 线程,直到您通过的条件解决。条件是 以一定的频率调用,直到等待超时 过去。这意味着只要条件返回虚假 值,它将继续尝试并等待。