我正在使用 python selenium 和 firefox 来检查页面标题是否为
WebDriverWait(driver, 60).until(lambda x: 'Page 1' in driver.title or 'Page 2' in driver.title)
我现在还想检查 HTML 元素是否存在,我可以在此 WebDriverWait 语句中执行此操作还是应该进一步处理结果?
最佳答案
一种选择是重用相同的 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)
关于Python Selenium 检查 html 元素是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43476953/