使用SeleniumWebDriver在nodejs中截取pdf网页的屏幕截图

wvyml7n5  于 2021-09-13  发布在  Java
关注(0)|答案(0)|浏览(390)

我在网上有一个pdf文档的链接,例如-
https://www.adobe.com/support/products/enterprise/knowledgecenter/media/c4611_sample_explain.pdf
在selenium webdriver的帮助下,我在node.js中编写了一个小代码,使用firefox作为浏览器,它将打开此页面,并将截图显示在浏览器屏幕上的pdf第1页的任何部分:-

const driver = new Builder().forBrowser('firefox')
      .setFirefoxOptions(options).build();
await driver.get(url);
await new Promise(resolve => setTimeout(resolve, 5000));

//this solution only works if Firefox browser is used
var data;
await driver.executeScript('document.getElementsByClassName("toolbar")[0].remove();');
await new Promise(resolve => setTimeout(resolve, 2000));
data = await driver.findElement(By.className('canvasWrapper')).takeScreenshot();
fs.writeFileSync('./screenshot.png', data, 'base64');

driver.quit();

我已经成功删除了浏览器pdf查看器中默认的上部工具栏。现在我想拍摄这个pdf网页的截图,不包括边框。
电流输出(上半部分变为透明)——

正确的答案应该是:

帮助解决同样的问题。如果需要任何细节,请告诉我。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题