Selenium Python:如何在重新加载页面前几秒钟使我的WebDriverWait生效?

Selenium Python:如何在重新加载页面前几秒钟使我的WebDriverWait生效?,python,selenium,selenium-webdriver,automation,qa,Python,Selenium,Selenium Webdriver,Automation,Qa,因此,我有一段代码,检查网页的一部分,查看状态是否已更改,以进入脚本中的下一步。如果没有刷新页面,它会刷新页面。理想情况下,我希望脚本在此网页上等待大约5-10秒,然后再次刷新页面。以下是我当前的循环: orderElem = driver.find_element(By.CSS_SELECTOR, "dd.Production.Status") while(orderElem.text != "Output Complete"): WebDriverWait(driver,

因此,我有一段代码,检查网页的一部分,查看状态是否已更改,以进入脚本中的下一步。如果没有刷新页面,它会刷新页面。理想情况下,我希望脚本在此网页上等待大约5-10秒,然后再次刷新页面。以下是我当前的循环:

orderElem = driver.find_element(By.CSS_SELECTOR, "dd.Production.Status")

while(orderElem.text != "Output Complete"):
        WebDriverWait(driver, 10)
        driver.refresh()
        WebDriverWait(driver, 5).until(
            EC.visibility_of_element_located((By.CSS_SELECTOR, "dd.Production.Status"))
        )
        orderElem = driver.find_element(By.CSS_SELECTOR, "dd.Production.Status")

您可以显式地等待
时间。sleep(10)
而不是
WebDriverWait

似乎您正在尝试每10秒刷新一次轮询页面,直到
orderElem.text==“输出完成”
,在这种情况下:

def until_func(驱动程序):
driver.refresh()
elem=驱动程序。通过css选择器(“dd.Production.Status”)查找元素
如果elem.is_display()且elem.text==“输出完成”:
返回元素
orderElem=WebDriverWait(驱动程序,超时=60,轮询频率=10)。直到(直到func)

这将每10秒刷新一次页面,检查所需的元素是否可见并具有正确的文本,并在满足这些条件时返回元素。

您可以显式地等待
时间。sleep(10)
而不是
WebDriverWait

似乎您正在尝试每10秒刷新一次轮询页面,直到
orderElem.text==“输出完成”
,在这种情况下:

def until_func(驱动程序):
driver.refresh()
elem=驱动程序。通过css选择器(“dd.Production.Status”)查找元素
如果elem.is_display()且elem.text==“输出完成”:
返回元素
orderElem=WebDriverWait(驱动程序,超时=60,轮询频率=10)。直到(直到func)

这将每10秒刷新一次页面,检查所需的元素是否可见并具有正确的文本,并在满足这些条件时返回元素。

您是否在寻找类似于
time.sleep()
?您是否在寻找类似于
time.sleep()
的内容?谢谢。这个功能和time.sleep(10)一样完美。谢谢。这个功能和time.sleep(10)一样,工作得非常完美。