JavaScript:截图呈现的网页浏览器样式

时间:2017-01-31 08:32:37

标签: javascript html pdf web screenshot

我认为这个问题可能在之前被问过,但经过几个小时的搜索后,我还没有找到令人满意的东西。

以下是我的问题:是否可以使用JavaScript截取完全呈现的网页?有点像大多数浏览器在ctrl+p的压力下在窗口上做的事情。

我已经研究了许多其他解决方案,例如html2Canvas.js  但没有一个适合我的需要。最大的问题是我的网页几乎完全使用Javascript在客户端呈现。这也是为什么像PhantomJS这样的服务器端解决方案几乎不适用的原因。

我需要将屏幕截图打印为图像或PDF。 有什么想法吗?

感谢。

1 个答案:

答案 0 :(得分:0)

你有没有看过Puppeteer by Google

如果您能够在服务器上运行它,它可能正是您正在寻找的。查看他们的示例代码:

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto('https://example.com');
  await page.screenshot({path: 'example.png'});

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