You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Python Selenium的WebDriverWait设置无超时?

实现无超时效果的WebDriverWait实例

WebDriverWait本身不支持直接设置“无限超时”,因为它的构造函数必须接收timeout参数。但你可以通过设置一个极大的超时值来绕过它的内置超时逻辑,让函数层面的@timeout()装饰器完全掌控超时行为。

两种可行的实现方式:

  • 传入一个极大的整数,比如10**18秒(约3000万年,远超过常规函数超时的时间范围):
    from selenium.webdriver.support.ui import WebDriverWait
    
    # 构造几乎不会触发自身超时的WebDriverWait
    wait = WebDriverWait(driver, timeout=10**18)
    
  • 或者使用float("inf")(无穷大),不过部分旧版Selenium可能对无穷大的兼容性不佳,更推荐用极大整数:
    wait = WebDriverWait(driver, timeout=float("inf"))
    

这样设置后,WebDriverWait自身的超时机制几乎不会被触发,超时完全由你函数上的@timeout()装饰器来控制,正好符合你的需求。

内容的提问来源于stack exchange,提问作者Geoff Alexander

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 14:12:31