python - WebDriverWait 多个条件(或逻辑评估)
问题描述
使用 python,方法 WebDriverWait 用于等待网页上出现 1 个元素。如何在没有多次尝试/除外的情况下使用此方法?使用这种方法是否有多个案例的 OR 选项? https://selenium-python.readthedocs.io/waits.html
解决方案
在不使用多个通过 OR 选项为两个元素try/except{}
诱导WebDriverWait的情况下,您可以使用以下任一解决方案:
使用
CSS_SELECTOR
:element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, ".element_A_class, .element_B_class"))
XPATH
通过lambda使用:element = WebDriverWait(driver,20).until(lambda driver: driver.find_element(By.XPATH,"element_A_xpath") or driver.find_element(By.XPATH,"element_B_xpath"))
参考
您可以在以下位置找到一些相关的讨论:
推荐阅读
- python - Unable to download Django 2.0.7 in windows 10
- javascript - How to change background color for active tab in Bootstrap 3 navigation bar?
- ios - 如何在目标 C、iOS 中缩放/调整 CVPixelBufferRef 的大小
- makefile - C 编译出错,正在尝试编译注释行
- php - 如何在 PHP 中保持用户登录一个月?
- swift - 将数据从 CollectionviewCell 传递到 ViewController
- math - sklearn贝叶斯分类器模型中保存了什么
- apache-nifi - Nifi putHiveStreaming 无法连接到 Metastore uri
- jsf - 使用 ui:repeat 遍历属性
- python-3.x - 将特殊字符作为参数从 python 脚本传递到 shell