在页面加载结束之前使用Puppeteer无头镀铬获取屏幕截图

时间:2018-05-17 21:45:43

标签: google-chrome puppeteer

我正在使用puppeteer尝试从以下地址的实况cctv流中抓取图像:192.168.1.1/display_pic.cgi?cam=6&res=low

问题是该页面正在不断加载,因为它是一个实时流。

当你加载页面时,Puppeteer最终会出现超时错误。有没有办法绕过这个,强制截屏然后关闭页面?

示例流是http://74.95.30.43/display_pic.cgi?cam=1&res=low

提前致谢!

1 个答案:

答案 0 :(得分:0)

您可以在catch块中处理超时异常,然后继续截屏。在这里,我使用了'domcontentloaded'而不是' networkidle'因为服务器仍在为客户服务。示例代码: -

await page.goto(pageUrl, { waitUntil: ['domcontentloaded'], timeout: testTimeout }).catch((err) => {
  console.log(err);
});
await page.screenshot({path: 'example.png'});