python - 如何设置 Selenium Python WebDriver 默认超时?

标签 python firefox selenium timeout selenium-webdriver

试图找到一种在 Selenium Python WebDriver 中为命令执行延迟设置最大时间限制的好方法。理想情况下,类似于:

my_driver = get_my_driver()
my_driver.set_timeout(30) # seconds
my_driver.get('http://www.example.com') # stops / throws exception when time is over 30     seconds

会起作用的。我找到了 .implicitly_wait(30),但我不确定它是否会产生所需的行为。

如果它有用,我们专门使用 Firefox 的 WebDriver。

编辑

根据@amey 的回答,这可能很有用:

ff = webdriver.Firefox()
ff.implicitly_wait(10) # seconds
ff.get("http://somedomain/url_that_delays_loading")
myDynamicElement = ff.find_element_by_id("myDynamicElement")

但是,我不清楚隐式等待是否适用于 get(这是所需的功能)和 find_element_by_id

非常感谢!

最佳答案

在python中,为页面加载创建超时的方法是:

Firefox、Chromedriver 和 undetected_chromedriver:

driver.set_page_load_timeout(30)

其他:

driver.implicitly_wait(30)

每当页面加载超过 30 秒时,这将引发 TimeoutException

关于python - 如何设置 Selenium Python WebDriver 默认超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17533024/

相关文章:

python - 链接问题将应用程序引擎的外壳应用程序嵌入我自己的应用程序中,以帮助编码

python - 如何使用 Python MySQdb 检查记录是否存在

html - Firefox 不会加载我的 CSS

eclipse - 有没有用于 Firefox 扩展创建的 Eclipse 插件?

python - 如何动态选择python基类?

selenium - 无法使用 css 选择器找到元素

python - 解析过程中随时列出所有可用标记的解析技术

Delphi控件可以模仿Firefox的 "Add-ons|Extension list"吗?

Python - 使用 Selenium 单击按钮

python - 元素不可点击,因为另一个元素在 python 中遮住了它