如何在 Puppeteer 中设置截图尺寸?

问题:

你正在尝试使用 Puppeteer 截图,如下所示:

example.js
await page.screenshot({path: 'screenshot.png'});

但截图始终是 800x600 像素。如何增大截图尺寸?

解决方案

你不能设置截图的尺寸,你需要在 puppeteer.launch 中设置视口尺寸:

example.js
const browser = await puppeteer.launch({
    defaultViewport: {width: 1920, height: 1080}
});

生成 1920x1080 截图的完整示例:

screenshot_full_example.js
const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch({
      defaultViewport: {width: 1920, height: 1080}
  });
  const page = await browser.newPage();
  await page.goto('https://techoverflow.net', {waitUntil: 'domcontentloaded'});
  // 等待页面完全加载
  // 截图
  await page.screenshot({path: 'screenshot.png'});

  await browser.close();
})();

Check out similar posts by category: Javascript, Puppeteer