puppeteer+express服务端导出页面为pdf

以下是开发步骤:

  • 1、创建目录 puppeteer_demo 目录,打开目录 初始化项目(命令为:npm init -y)

页面如:

初始化后,项目目录会出现 package.json 文件

  • 2、安装 puppeteer ,使用命令:npm i puppeteer -D

会出现如下页面:

这样就安装成功了(在上面安装我还遇到了问题,node版本太低了,之前是16,升级为22就可以用了)

3、安装express,使用命令:npm i express D

会出现下面页面:

查看 puppeteer与express是否安装成功,可以看项目中的package.json 文件,

如上图的话,就是都安装成功了

4、在项目中创建index.js文件,其中内容如下

复制代码
let express=require("express")
let app=express()
let puppeteer=require("puppeteer")
app.use('/pdfurl',()=>{
 (async()=>{
    // 启动浏览器
    const brower=await puppeteer.launch()
    // 新建页面
    const page=await brower.newPage()
    // 打开网页(其中的链接地址替换为你需要的网页地址)
    await page.goto("https://www.shicimingju.com/chaxun/zuozhe/13046_6.html")
    // 打开pdf
    await page.pdf({path:`./demo.pdf`,printBackground: true,
    preferCSSPageSize: true,
    media: 'screen', // 强制使用屏幕样式
})
    // 关闭浏览器
    await brower.close()
 })()
})
app.listen(5678,()=>{
    console.log('5678,puppeteer 导出pdf !')
})

5、在项目中 运行 node .\index.js

编辑器会出现下发内容提示:

浏览器中访问地址为:http://127.0.0.1:5678/pdfurl ,加载会有一点慢,需要等一会,再打开项目目录,就会发现多出一个demo.pdf 文件,如:

pdf 打开,就是你想要的内容啦!!!!!

如上步骤操作就可以生成,以上只是demo,如果需要项目中使用,根据实际情况,自己调整。

相关推荐
海峰教授16 小时前
扫描仪+文档pdf编辑器+pdf格式转换器
pdf
Li_na_na0116 小时前
解决安卓手机WebView无法直接预览PDF的问题(使用PDF.js方案)
android·pdf·uni-app·html5
背太阳的牧羊人16 小时前
使用 PyMuPDF(fitz)库打开 PDF 文件,并且是从内存中的字节流(BytesIO)读取 PDF 内容
数据库·pdf·文件处理·pymupdf·fitz
灯火不休ᝰ16 小时前
前端处理pdf文件流,展示pdf
前端·pdf
还是鼠鼠21 小时前
Node.js 中间件-中间件的概念与格式
前端·javascript·vscode·node.js·express
梨小橙子21 小时前
PPT画图,如何用Visio转化为pdf,且无白边
pdf·powerpoint
云只上1 天前
解决Luckysheet在线预览编辑Excel、PDF.....无法在同一个界面创建多个luckysheet实列问题
pdf
inxunoffice1 天前
批量给 PDF 添加页眉页脚以及页码信息
前端·javascript·pdf
学c真好玩1 天前
4.1-python操作wrod/pdf 文件
开发语言·python·pdf
绘绘~1 天前
软考-数据库系统工程师第四版pdf
pdf·软考·数据库系统工程师