Python Selenium检查html元素存在

时间:2017-04-18 15:58:01

标签: python selenium

我正在使用python selenium和firefox来检查页面标题是否

WebDriverWait(driver, 60).until(lambda x: 'Page 1' in driver.title or 'Page 2' in driver.title)

我现在想要检查是否存在HTML元素,我可以在此WebDriverWait语句中执行此操作,还是应该进一步处理结果?

1 个答案:

答案 0 :(得分:2)

一种选择是重用相同的WebDriverWait()实例并发布后续等待:

wait = WebDriverWait(driver, 60)
wait.until(lambda x: 'Page 1' in driver.title or 'Page 2' in driver.title)
wait.until(EC.presence_of_element_located((By.ID, "myid")))

或者,您也可以将它们组合在一个功能中

def mywait(driver):
    if 'Page 1' in driver.title or 'Page 2' in driver.title:
        return EC.presence_of_element_located((By.ID, "myid"))(driver)

wait = WebDriverWait(driver, 60)
wait.until(mywait)