ERROR: Failed to download Chromium r609904! Set "PUPPETEER_SKIP_CHROMIUM_DOWNLOAD" env variable to skip download.

栏目: NodeJs 发布时间:2025-09-25

报错信息:

ERROR: Failed to download Chromium r609904! Set "PUPPETEER_SKIP_CHROMIUM_DOWNLOAD" env variable to skip download.
Error: connect ETIMEDOUT 142.250.217.123:443
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1144:16) {
  errno: -110,
  code: 'ETIMEDOUT',
  syscall: 'connect',
  address: '142.250.217.123',
  port: 443
}

原因:Puppeteer 依赖的 Chromium 浏览器时遇到了网络连接超时问题,无法正常安装。

解决方法:

puppeteer 指定可用的 Chromium 浏览器下载地址

npm config set puppeteer_download_host https://cdn.npmmirror.com/binaries/chrome-for-testing

可以在 package.json 文件中这样配置:

"init": "npm config set puppeteer_download_host https://cdn.npmmirror.com/binaries/chrome-for-testing && npm install"

然后运行 npm run init 即可完成项目依赖的安装,搞定!


延伸阅读:

你是否很好奇,puppeteer 下载的 chromium 存在哪了呢?

我们在 node_modules/puppeteer/.local-chromium 文件夹下可以看到下载的 chromium 文件。

ls -a node_modules/puppeteer/
.  ..  .appveyor.yml  CONTRIBUTING.md  DeviceDescriptors.js  Errors.js  index.js  install.js  lib  LICENSE  .local-chromium  node6  

所以,如果你服务器如果有 .local-chromium 的备份,你也是可以直接复制到 node_modules/puppeteer/ 文件夹下,采用这种方式的话就可以配置忽略下载 Chromium。

可以在 package.json 文件中这样配置:

"init": "npm config set puppeteer_skip_chromium_download true && npm install"

请根据自己的实际情况,选择合适的方案,祝你好运!

本文地址:https://www.tides.cn/p_node-ERROR-Failed-to-download-Chromium-r609904-Set-PUPPETEER_SKIP_CHROMIUM_DOWNLOAD-env-variable-to-skip-download.