因为网络原因,国内安装 puppeteer 的时候会报网络超时。这里使用 puppeteer-core 之后使用手动下载的 Chrome 进行操作。思路很简单,安装一个不带浏览器的 puppeteer,再使用的时候将浏览器地址指向一个可执行的 Chrome 浏览器文件。
安装
安装puppeteer-core。
1 | yarn add puppeteer-core |
找到 puppeteer 中对应的浏览器并下载
在 node_modules/puppeteer-core/lib/BrowserFetcher.js 中找到各平台 Chrome 下载地址。其中%s 替换为 DEFAULT_DOWNLOAD_HOST 的值,%d 替换为版本号。

在 node_modules/puppeteer-core/packages.json 中找到版本号

替换后得到下载地址
https://storage.googleapis.com/chromium-browser-snapshots/Mac/579032/chrome-mac.zip
下载后解压,放在项目目录中,这里我放在 chrome 下。
使用
这样就可以使用了。
使用代码
1 | const puppeteer = require('puppeteer-core'); |
执行文件
1 | node index.js |
执行后可看到,图片已经截图出来了
