puppeteer 生成pdf
时间: 2024-12-02 16:07:55 浏览: 18
Puppeteer是一个Node.js库,它允许您控制Chromium或Chrome浏览器,并自动化网页交互,包括渲染页面、填充表单、截图以及生成PDF。通过Puppeteer,你可以编写JavaScript代码来模拟用户操作,然后将页面内容转换为PDF文件。
要使用Puppeteer生成PDF,首先需要安装puppeteer和相关的依赖,如`sharp`用于处理图片。下面是一个简单的步骤:
1. 引入必要的模块:
```javascript
const puppeteer = require('puppeteer');
const fs = require('fs');
```
2. 启动一个新的浏览器实例并导航到目标URL:
```javascript
async function generatePdf(url) {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto(url);
```
3. 设置PDF选项(如页眉、页脚、尺寸等),然后渲染页面到PDF:
```javascript
const options = { format: 'A4', margin: '0mm' }; // 可自定义PDF样式
const buffer = await page.pdf({ path: '/path/to/pdf/document.pdf', ...options });
```
4. 关闭浏览器实例并释放资源:
```javascript
await browser.close();
return buffer;
}
```
5. 调用`generatePdf`函数并将结果保存到本地:
```javascript
generatePdf('https://example.com').then((pdfBuffer) => {
fs.writeFileSync('output.pdf', pdfBuffer);
});
```
阅读全文