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

Selenium Chrome无头模式下按钮点击失效问题求助

无头模式下Selenium点击按钮触发TimeoutException,非无头模式正常运行

我写了一段用Selenium打开网站并点击指定按钮的代码,移除--headless参数后运行流畅,但启用无头模式时就会出现TimeoutException错误。网上搜了很多类似问题的解决方案(比如设置窗口大小、更换按钮点击方式等),试过都没用,想问问有没有其他解决思路。

原代码片段

for website in websites:
    chrome_options = webdriver.ChromeOptions()
    chrome_options.add_argument("--no-sandbox")
    chrome_options.add_argument("--headless")
    chrome_options.add_argument("--disable-gpu")
    chrome_options.add_argument("window-size=1500,900");

    driver = webdriver.Chrome(options=chrome_options)
    wait = WebDriverWait(driver, 10)

    # 访问容器中的指定URL
    driver.get(website["url"])

    element = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="CollectorsClub"]/div[2]/div[1]/div[1]/nav/button[2]')))
    driver.execute_script("arguments[0].click();", element)

报错信息

启用无头模式时抛出的错误:

raise TimeoutException(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message:
Stacktrace:

已尝试的其他点击方式(结果相同)

button = wait.until(EC.element_to_be_clickable((By.XPATH, '//*[@id="CollectorsClub"]/div[2]/div[1]/div[1]/nav/button[2]')))

# 点击按钮
button.click()

已尝试的常规方案(均无效)

  • 设置窗口大小(已在代码中添加window-size=1500,900)
  • 更换按钮定位方式(目前用的XPATH,试过其他定位也不行)
  • 更换点击方法(execute_script点击和直接click都试过)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 08:39:56