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

指定executablePath启动Puppeteer时遇WS端点超时错误求助

解决Puppeteer启动时WS端点超时问题

问题根源

你犯了一个关键错误:executablePath参数传的是chromedriver驱动程序,但Puppeteer需要的是Chrome/Chromium浏览器的二进制可执行文件,不是WebDriver驱动。这直接导致Puppeteer无法正常启动浏览器,进而触发WS端点超时错误。

修复方案

1. 修正executablePath路径

将路径替换为你本地Chrome浏览器的实际二进制文件路径:

  • Mac ARM64平台下,Chrome默认路径为:/Applications/Google Chrome.app/Contents/MacOS/Google Chrome
  • 如果是Chromium,路径类似:/Applications/Chromium.app/Contents/MacOS/Chromium

修改后的代码示例:

import puppeteer from 'puppeteer'
import { resolve } from 'path'

const main = async () => {
    const browser = await puppeteer.launch({
        headless: false,
        defaultViewport: null,
        // 替换为Chrome浏览器的实际路径
        executablePath: '/Applications/Google Chrome.app/Contents/MacOS/Google Chrome'
    })
    const page = await browser.newPage()

    await page.goto('https://whoer.net', {
        waitUntil: 'domcontentloaded'
    })
    await sleep(40_000)

    await browser.close()
}

main()

function sleep(sec: number): Promise<void> {
    return new Promise(r => setTimeout(r, sec))
}

2. 可选:使用Puppeteer自带的Chromium

如果不想手动指定浏览器路径,可以直接移除executablePath配置,Puppeteer会自动下载并使用兼容版本的Chromium,避免版本不兼容问题:

const browser = await puppeteer.launch({
    headless: false,
    defaultViewport: null
})

额外排查点

  • 确认Chrome/Chromium能正常手动启动,没有损坏或权限问题
  • 检查Puppeteer版本与浏览器版本是否兼容(使用自带Chromium可跳过此步骤)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 19:52:11