Skip to content

ChenYFan-Tester/WebStack-Screenshot

 
 

Repository files navigation

语言: 中文 English

网站截图 API

Version MIT License

简介

仅仅只是做了一些简单的截图操作,如果有什么需求,或是想参与开发,我们欢迎您 PR

快速开始

免费部署

Deploy with Vercel

NPM 安装

初始化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 图片类型,pngjpegwebp
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 图片编码,binarybase64
clip String 剪切指定区域,接收 4 个单位以英文逗号分割分别是x,y,width,height
font String 如果指定的截图网站出现乱码,你可通过该参数指定字体url地址
waitUntil load String 在什么时机触发截图,详细请看下方另一个表格

waitUntil

属性 描述
load 在 load 事件触发时完成
domcontentloaded 在 DOMContentLoaded 事件触发时完成
networkidle0 500ms 内没有任何网站请求时
networkidle2 500ms 内只有 2 个请求时

Packages

No packages published

Languages

  • JavaScript 100.0%