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

Windows下Ubuntu20环境运行Puppeteer启动浏览器超时报错如何解决

问题原因

这个报错是WSL2的Ubuntu20环境缺少Chrome运行依赖、默认无图形渲染能力导致的,你配置的headless: false需要图形界面支持,同时puppeteer内置的Chrome也可能缺失必要的系统运行库。

解决方案

你可以按优先级选择以下调整方案:

方案1:改用无头模式(最推荐,无需额外配置环境)

直接修改puppeteer.launch的配置,启用无头模式即可满足截图、自动化等绝大多数场景需求:

const puppeteer = require('puppeteer');
async function main() {
  const browser = await puppeteer.launch({
    // 新版puppeteer推荐用'new'值,旧版本可以直接写true
    headless: 'new',
    // 新增--disable-setuid-sandbox参数适配WSL环境
    args: ['--no-sandbox', '--disable-setuid-sandbox'],
    // 可选:调大超时时间避免偶现超时
    timeout: 60000
  });
  const page = await browser.newPage();
  await page.goto('https://example.com');
  await page.screenshot({
    path: 'example.png'
  });
  await browser.close();
}
main();

修改完成后重新运行node index.js即可正常生成截图。

方案2:保留图形模式(需要配置WSL GUI能力)

如果你确实需要使用headless: false的可视化界面,按以下步骤操作:

  • 首先更新WSL到最新版本:Windows11自带WSLg图形支持,Windows10需要升级到21H2及以上版本,在PowerShell执行wsl --update升级WSL内核。
  • 安装Chrome运行所需的系统依赖,在Ubuntu终端执行:
    sudo apt update && sudo apt install -y libxss1 libasound2 libatk-bridge2.0-0 libgtk-3-0 libgbm-dev libnss3 libx11-xcb1 libxcb-dri3-0 libdrm2 libxshmfence1
  • (仅Windows10无WSLg环境需要操作)安装Windows端X Server工具VcXsrv,启动时勾选"Disable access control",然后在Ubuntu终端执行以下命令配置显示输出,要永久生效可写入~/.bashrc文件:
    export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0

方案3:使用系统安装的Chrome替代内置版本

如果内置Chrome兼容有问题,可以手动安装官方Chrome并指定路径调用:

  • 在Ubuntu终端执行以下命令安装Chrome:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i google-chrome-stable_current_amd64.deb
sudo apt install -f -y
  • 修改launch配置指定Chrome路径:
const browser = await puppeteer.launch({
  executablePath: '/usr/bin/google-chrome',
  headless: 'new',
  args: ['--no-sandbox', '--disable-setuid-sandbox']
});

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 02:06:11