Selenium Webdriver Python-隐式等待我不清楚

Selenium Webdriver Python-隐式等待我不清楚,python,selenium,selenium-webdriver,Python,Selenium,Selenium Webdriver,其他人问了这个问题,有一些答案,但他们一刻也没有澄清。如果没有立即找到元素,隐式等待将等待指定的时间,然后在等待指定的时间后运行错误。这是否意味着隐式等待在第一秒钟检查元素,然后等待指定的时间,并在最后一秒钟再次检查 我知道显式等待每隔500毫秒轮询一次DOM。如果测试需要更长的时间,隐式等待的实际用途是什么 在隐式等待的情况下,驱动程序会等待元素出现在DOM中,但同时不能保证元素可用。可能无法使用图元(如单击按钮),或者当时未定义图元的形状 我们对页面上的所有元素都不感兴趣,因为我们使用的是s

其他人问了这个问题,有一些答案,但他们一刻也没有澄清。如果没有立即找到元素,隐式等待将等待指定的时间,然后在等待指定的时间后运行错误。这是否意味着隐式等待在第一秒钟检查元素,然后等待指定的时间,并在最后一秒钟再次检查


我知道显式等待每隔500毫秒轮询一次DOM。如果测试需要更长的时间,隐式等待的实际用途是什么

在隐式等待的情况下,驱动程序会等待元素出现在DOM中,但同时不能保证元素可用。可能无法使用图元(如单击按钮),或者当时未定义图元的形状

我们对页面上的所有元素都不感兴趣,因为我们使用的是selenium。所有元素可能都没有形状,但DOM中所有元素的存在对于其他元素正常工作很重要。等等


在处理任何元素时,我们都使用显式等待(WebDriverwait)或FluentWait。

隐式等待是selenium内部的。初始化时设置一次。然后,每次web驱动程序尝试查找元素时,它都会连续(通过一些轮询)查找elmemt,直到“隐式等待”计时器过期。如果找到该元素,它将继续执行,否则将抛出
nosucheElement
异常。所以它在第一秒发现它,它将从等待循环中出来,否则,若它在最后一秒并没有找到元素,它将抛出exeception

显式等待用于需要等待特定条件为真的场景。例如,元素的可见性。其范围仅限于该特定调用

您可以查找更多详细信息和示例