Puppeteer - 无法读取未定义的属性“可执行路径”

代码大师

无论我尝试了什么,我总是得到 executablePath 是未定义的。不幸的是,谷歌上没有太多关于此的信息。任何人都可以让我知道在哪里更深入地解决这个错误,那就太好了。revisionInfo 返回未定义。

错误

BrowserFetcher {
  _product: 'chrome',
  _downloadsFolder: '/var/www/node_modules/puppeteer/.local-chromium',
  _downloadHost: 'https://storage.googleapis.com',
  _platform: 'linux' }
TypeError: Cannot read property 'executablePath' of undefined
    at demo1 (/var/www/filename.js:10:36)

源代码

const puppeteer = require('puppeteer');

const demo1 = async () => {
  try {
    const browserFetcher = puppeteer.createBrowserFetcher();
    console.log(browserFetcher);
    const revisionInfo = await browserFetcher.download('970485');
    const browser = await puppeteer.launch({
      headless: false,
      executablePath: revisionInfo.executablePath,
      args: ['--window-size=1920,1080', '--disable-notifications'],
    });
    const page = await browser.newPage();
    await page.setViewport({
      width: 1080,
      height: 1080,
    });
    await page.goto('https://example.com', {
      waitUntil: 'networkidle0',
    });

    await page.close();
    await browser.close();
  } catch (e) {
    console.error(e);
  }
};

demo1();
代码大师

看两件事

  1. 如果您进行了 apt install chromium-browser ,请将其删除
  2. 尝试使用 x86 服务器而不是基于 ARM 的服务器运行和安装(aws 的 t4g 实例)

其中任何一个都解决了我的问题。代码还是一样的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章