语言:
中文
English
网站截图 API
仅仅只是做了一些简单的截图操作,如果有什么需求,或是想参与开发,我们欢迎您 PR
初始化npm
项目,并且安装webstack-screenshot
库
npm init -y
npm install webstack-screenshot --save
新建server.js
文件
// server.js
// 服务器(Server) 部署使用 server
// 无服务器(ServerLess) 部署使用 main
const { server, main } = require('webstack-screenshot')
// 服务器(Server) 直接调用 server() 函数即可运行
// 服务端口号默认为: 6870
// 可直接传入端口号指定,如: server(6870)
// 可指定环境变量 PORT 来指定端口号
// 端口优先级: process.env.PORT ---> PORT ---> 6870
server()
// 无服务器(ServerLess) 暴露 main() 函数给无服务器即可
module.exports = main
通过克隆仓库到本地来启动 网站截图 API
# 克隆仓库,并进入 WebStack-Screenshot 目录
git clone https://github.com/Lete114/WebStack-Screenshot.git WebStack-Screenshot
cd WebStack-Screenshot
# 安装依赖
npm install
# 启动服务(与下方热启动任选其一执行即可)
npm run start
# 使用热启动服务
npm run start:hot
请求方法: GET | POST
属性 | 默认值 | 类型 | 描述 |
---|---|---|---|
url | String | 请求的网站 URL 地址,如果输入的是域名会自动拼接http:// |
|
type | png | String | 图片类型,png 、jpeg 、webp |
cache | 86400 | Int & Boolean | 缓存,默认缓存为 1 天,传入false 禁用缓存,传入数字如:123 则缓存 123 秒 |
quality | Int | 图片质量0-100之间,如果是图片类型是png 则被忽略 |
|
viewport | Int | 截图 100 宽 200 高,格式100x200 |
|
fullPage | true | Boolean | 截取完整页面,如果使用clip 属性需要手动设置为false |
isMobile | false | Boolean | 是否是手机端 |
await | 0 | Int | 页面渲染完成后等待,0 表示不等待(单位毫秒) |
timeout | 30000 | Int | 截图超时,0 表示无限制(单位毫秒) |
encoding | binary | String | 图片编码,binary 、base64 |
clip | String | 剪切指定区域,接收 4 个单位以英文逗号分割分别是x,y,width,height |
|
font | String | 如果指定的截图网站出现乱码,你可通过该参数指定字体url 地址 |
|
waitUntil | load | String | 在什么时机触发截图,详细请看下方另一个表格 |
属性 | 描述 |
---|---|
load | 在 load 事件触发时完成 |
domcontentloaded | 在 DOMContentLoaded 事件触发时完成 |
networkidle0 | 500ms 内没有任何网站请求时 |
networkidle2 | 500ms 内只有 2 个请求时 |