首页 > 解决方案 > Puppeteer NodeJS没有截图整个页面

问题描述

我正在尝试使用 puppeteer 无头渲染 HTML 片段。问题是它是一个相当大的图像,大约为 10k x 8k。当我在本地使用以下代码运行 puppeteer 时,它可以正常工作,但是当我将其放入计算能力较低的云实例中时,图像的底部不会被捕获并留空。我也注意到,当我提高云实例的能力时,它会捕获更多,但是我宁愿等待时间而不是仅仅提高计算能力。有任何想法吗?否则也许是让服务器呈现传递的 HTML 的另一种方法?

这是我的代码

const page = await browser.newPage();
await page.setViewport({
      width: width,
      height: height,
      deviceScaleFactor: 1,
});            
await page.setContent(imgHtml);
const screenshot = await page.screenshot({ path: `./public/image.png`, omitBackground: true });
await browser.close();
return screenshot;

标签: node.jsimagepuppeteernode-modulesscreenshot

解决方案


推荐阅读