在puppeteer中使用React应用接收随机导航超时

时间:2018-08-01 11:50:05

标签: node.js puppeteer

我正在使用Puppeteer渲染我的React网站的每个页面。这种方法在大多数情况下都可以正常运行,并且会随机崩溃。崩溃的页面每次都不相同。我已经在最大化窗口模式下启动了浏览器,以查看发生了什么并且一切都按预期运行,但是它一直崩溃。当它崩溃时,puppeteer在我的waitForSelector语句上引发导航超时错误。但是我可以在最大化实例中看到所需的选择器存在。我用这样的东西:

const storeHTMLToFile = require('./storeHTMLToFile');

const getPageContent = async (url) => {
  const browser = await puppeteer.launch({ headless: true });
  const page = await browser.newPage();

  await page.goto(url, { waitUntil: 'networkidle0' });

  await page.waitForSelector('div#content');

  await storeHTMLToFile(await page.content());

  await browser.close();
};

const startRendering = async (urls) => Promise.all(
  urls.map(url => getPageContent(url)),
);

0 个答案:

没有答案