puppeteer运行出现:
Could not find browser revision 809590. Run "PUPPETEER_PRODUCT=firefox npm install" or "PUPPETEER_PRODUCT=firefox yarn install"报错,显然时没找到对应版本的浏览器。
GitHub上issues上提供解决方案试了一圈度没用。后来在官方api文档里发现了puppeteer.createBrowserFetcher:
image
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();
    });
});

messchow
211 声望7 粉丝

能被js改变的,终将被js改变