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

Python Selenium中WebDriverWait失效但find_element_by_name可用是什么原因

WebDriverWait失效核心原因

EC.presence_of_element_located的入参格式不符合要求:

  • Selenium 中expected_conditions下的所有元素判断方法,都要求传入由定位方式、定位值组成的二元元组,而非两个独立参数。
  • 你注释的代码直接将By.NAME和"email"作为两个独立参数传入,不符合方法入参规则,因此会抛出参数异常。
  • 未注释的driver.find_element_by_name是专门的name定位快捷方法,仅需传入name属性值一个参数,因此可以正常执行。

修复后可正常运行的代码

try:
    search = WebDriverWait(driver, 20).until(
        # 额外加一层括号,把定位参数包装为元组
        EC.presence_of_element_located((By.NAME, "email"))
    )
except:
    print("Did not find element with name 'email'")

内容的提问来源于stack exchange,提问作者Dave S

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 03:15:01