puppeteer 运行呈现:Could not find browser revision 809590. Run "PUPPETEER_PRODUCT=firefox npm install" or "PUPPETEER_PRODUCT=firefox yarn install"
报错,显然时没找到对应版本的浏览器。
GitHub 上 issues 上提供解决方案试了一圈度没用。起初在官网 api 文档里发现了 puppeteer.createBrowserFetcher
:
createBrowserFetcher 是一个官网 的浏览器版本管理工具 ,只需用指定版本就能对应 下载 , 回调返回 装置的门路 。
实例:
const puppeteer = require("puppeteer");
const browserFetcher = puppeteer.createBrowserFetcher();
browserFetcher.download("809590").then((res) => {
puppeteer
.launch({
executablePath: res.executablePath, //chrome 执行门路
headless: false, // 浏览器无头模式
})
.then(async (browser) => {
// 保留 Endpoint,这样就能够从新连贯 Chromium
const browserWSEndpoint = browser.wsEndpoint();
// 从 Chromium 断开连接
browser.disconnect();
// 应用 endpoint 从新和 Chromiunm 建设连贯
const browser2 = await puppeteer.connect({browserWSEndpoint});
// Close Chromium
// await browser2.close();});
});