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,如果需要项目中使用,根据实际情况,自己调整。

相关推荐
小熊熊知识库1 天前
双层PDF转换软件
pdf·双层pdf转换
Dumbness5 天前
一份 JSON 生成增删改查接口,入参清洗漏了什么:Number(" ") 是 0,搜 100% 把 1000 元券也搜出来
node.js·express
AI导出鸭PC端6 天前
Perplexity批量导出没有PDF模式?AI导出鸭插件补上最后一块拼图
人工智能·pdf·c#·ai导出鸭
Ravenq~6 天前
无头转换:把 .docx 变成 PDF,不打开编辑器
pdf·编辑器
联犀6 天前
纯 Go 的 CAD 开源库 go-cad:直接解析 DWG/DXF,现在也能导出 PDF
开发语言·golang·pdf
Dumbness8 天前
毕设后台导出 CSV 的 4 个坑:date 字段漏了公式防护,搜索框输入 % 能扫全表
node.js·express
FinelyYang10 天前
uniapp使用kkfileview在线预览ppt,excel,word,pdf类型文件
pdf·uni-app·powerpoint
WORLDPO922610 天前
QTE-020-01-L/F/C-D-A-K-TR_实物_数据手册PDF_国产替代
pdf
Dumbness10 天前
一个手机号验证码登录接口的五个坑:无限发码、无限试码,传个数字就让 Express 进程退出
node.js·express
asdzx6711 天前
C# 操作 PDF 元数据:从属性写入到字段提取的完整流程
前端·pdf·c#