使用python+playwright开发了一个高效网页截图工具:支持长截图、异步加载内容截图、API调用、Docker一键部署!
一、简介
- 利用playwright自动化工具,模拟浏览器打开网页,实现完整网页截图功能
- 支持长截图,支持异步加载动态渲染内容截图
- 支持docker一键部署
- 支持API调用
- 项目地址:github.com/luler/hello_screenshot
二、安装
提前安装好docker、docker-compose环境(自行安装,不做赘述)
新建docker-compose.yml文件,内容如下:
version: '3' services: hello_screenshot: image: ghcr.io/luler/hello_screenshot:latest privileged: true ports: - 14140:14140
一键启动命令
docker-compose up -d
三、使用示例
直接访问页面即可使用,页面地址:localhost:14140/ ,
页面截图如下:
输入页面地址,点击抓取按钮就可实现网页截图,如下:
使用API调用方式实现截图
接口:
GET:
localhost:14140//screenshot请求参数
字段 类型 是否必填 简介 url string 是 需要截图的目标网页地址 viewport_width int 否 浏览器视窗宽度(单位px),默认:1280 viewport_height int 否 浏览器视窗高度(单位px),默认:720 wait_second int 否 打开页面后等待秒数,默认:0,如果有些页面的数据是异步请求获取的,这里才需要设置等待获取时间 full_page int 否 是否长截图整个网页,0-否(默认),1-是 postman请求示例:
四、演示地址
五、总结
- 一个专注于网页截图的小工具,安装和使用都非常简单
- 因为有便于集成的API调用功能,可以轻松集成到一些需要网页截图、内容存档等功能的应用
啊这不是一个 chrome 搞定的事情?