gpt4 book ai didi

python - 为什么 Selenium python 包中缺少 expected_conditions all_of、none_of 和 any_of?

转载 作者:行者123 更新时间:2023-12-04 08:06:33 39 4
gpt4 key购买 nike

我将 Selenium 与 Python 结合使用,发现需要使用 WebDriverWaitselenium.webdriver.support.expected_conditions在里面。我必须等待一个元素被删除并显示另一个元素,所以我希望使用 all_of 和 none_of 使条件更容易理解:

WebDriverWait(browser, 10).until(
EC.all_of(
EC.presence_of_element_located((By.CSS_SELECTOR, "span[title='VMC OIC-2 batch 2022'")),
EC.none_of(
EC.presence_of_element_located((By.CSS_SELECTOR, "div#startup")),
EC.presence_of_element_located((By.CSS_SELECTOR, "div#initial-startup"))
)
)
)

不幸的是,我收到了这个错误:

AttributeError: module 'selenium.webdriver.support.expected_conditions' has no attribute 'all_of'

通过原始打印进行进一步检查后,我了解到 any_of、all_of 和 none_of 条件均无效。

另一件需要注意的事情是,上述条件存在于带有 Java 的 Selenium 中。我可以找到 an issue谈到这个,似乎 any_of、all_of 和 none_of 最终被添加到 expected_conditions 中,这在 Selenium 存储库的相应文件中很明显:expected_conditions.py (最后三个函数)。

这个问题需要解释,而不是替代,我很清楚我可以编写一个函数来完成相同的任务,甚至可以复制 expected_conditions.py 中列出的函数,但我真的很想知道为什么存在这些函数在存储库中,在工作包中不存在。

感谢阅读!

最佳答案

pip install selenium==4.0.0.a7

安装selenium 4 alpha版本,selenium 3.141不会有新的更新

https://github.com/SeleniumHQ/selenium/releases

您可以看到 v3 的最后更新是在 2018 年 12 月。单击查看新标签以查看最新的 v4 版本

enter image description here

文档根据 selenium 4 更新

https://github.com/SeleniumHQ/seleniumhq.github.io/issues/627

关于python - 为什么 Selenium python 包中缺少 expected_conditions all_of、none_of 和 any_of?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66194080/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com