API接口、自动化脚本调用流程
一、 api接口概述1
Easybr提供了本地Local API的功能,可通过程序化的方式读写账号配置信息、启动和关闭浏览器、查询账号等基础API功能。此外,它还可以与Selenium和Puppeteer等自动化框架配合使用,实现浏览器操作的自动化。
自动化demo仓库
GitHub https://github.com/xxjrq/easybr
gitee https://gitee.com/xxjrq/easybr
自动化 支持Selenium Puppeteer playwright 为node语言开发,其他语言请使用chatgpt翻译。
点赞支持,有礼相送。
接口说明:
● 只有付费版用户才具备API接口调用权限。
● 确保API页中的接口状态为成功。当前版本的API接口地址为http://127.0.0.1:3001/,默认端口号为3001,以设置中显示的地址为准。
● 可以使用脚本或HTTP请求工具调用本地API接口,实现配置账号数据、浏览器指纹、启动/关闭浏览器等程序化操作。
● 所有API接口的参数类型都为字符串。POST请求的内容格式为JSON,非必需参数为可选参数,可以选择不传递。
● 所有接口都设有访问频次控制,每个设备在每秒内最多允许发出1次请求。
● Local API服务同时支持无界面模式下使用API密钥启动。
二、 api接口调用流程
登录浏览器后台,主页左边工具栏系统设置自行查看接口,目前接口支持打开和关闭浏览器,配置账号数据等功能尚在升级中,请放心使用。
三、 api接口参数
1)api–API接口状态
基本信息
Path: http://127.0.0.1:3001/auto/status
Method: GET
接口描述:用于检查当前设备API接口的可用性
返回数据
//检查可用
{
"code": 0,
"msg": "success"
}
2)api–获取浏览器列表
http://127.0.0.1:3001/auto/getBrowerList?page=1&limit=30&browername=
返回值
{
"code": 0,
"data": [
{
"browerid": "651bd67ca7f4b8105f25948c",
"createdate": 1696323196572,
"groupname": "不限",
"webGLFac": "",
"ssl": "1",
"GroupID": "0",
"CPU": ""
},{
"browerid": "651bd67ca7f4b8105f25949c",
"createdate": 1696323196572,
"groupname": "不限",
"webGLFac": "",
"ssl": "1",
"GroupID": "0",
"CPU": ""
}
],
"records": 0,
"count": 10
}
获取到参数,browerid用于操作打开浏览器窗口,关闭浏览器窗口
3)api–打开浏览器
http://127.0.0.1:3001/auto/openBrower
参数
{
"browerid": "65961fea82cee5457e2ff306"
}
返回值
{
"code": 0,
"data": {
"ws": "ws://localhost:51760/devtools/browser/31de2812-6075-48f3-8070-75873ce1171e",
"http": "http://localhost:51760",
"session": "51a9fcb553847be48653558967448c96",
"dir": "E:\\develop\\browse\\simplebrower/UserData/u65961fea82cee5457e2ff306"
}
}
获取到参数,
http主要用于浏览器debug接口,可用于selenium自动化
ws浏览器debug接口,可用于puppeteer自动化
相关调用源码示例 github 地址
4)api–关闭浏览器
post
http://127.0.0.1:3001/auto/closeBrower
参数
{
"browerid": "65961fea82cee5457e2ff306"
}
返回值
{
"code": 0,
"msg": "success"
}
创建/修改浏览器窗口,指纹对象必传。创建窗口需要随机指纹对象时,只传空对象{}即可,指纹值里,留空会随机
POST` `/auto/addBrowers
{
browerid:"123qwe",//浏览器窗口id,传id时为修改,不传为创建
browername: "test",//浏览器窗口名称
crxplug: "",//插件列表
siteurl: "",//启动网址
openmodel: "2",//打开模式 1固定 2无痕
cookie: "",//cookie json数据 详细见获取接口
initCookie: false,//每次启动设置cookie
getCookie: false,//自动从浏览器获取cookie,可能导致cookie丢失
proxyType: "1",//代理设置 1 不使用代理 2 自定义 3 api提取
proxyProtocol: "",//代理类型 https socks5 http
prHost: "",//代理主机
prPort: "",//代理端口
prAccount: "",//代理账号
prPass: "",//代理密码
prlink: "",//代理链接
prGetType: "1",//提取方式 1每次打开浏览器提取 2上次提取失败才提取
agent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Herring/95.1.3040.41",
lastSession: true,//lastSession 保存会话
timezone: false,//基于IP生成对应时区
screen: "1",//分辨率 1跟随电脑 2自定义
screendata: "",//1024x768
webrtc: "3",//1禁用 2真实 3替换
local: "1",//地理位置 1禁用 2允许 3允许
lag: false,//基于IP生成对应的语言
lagStr: "",//界面语言
canvas: "1",//canvas 1噪音 2关闭
font: "1",//字体 1噪音 2关闭
webgl: "1",//WebGL图像 1噪音 2关闭
webGLFac: "",//WebGL厂商
webglRend: "",//WebGL渲染
audiocontext: "1",//audiocontext 1噪音 2关闭
audiodevice: "1",//audiocontext 1噪音 2关闭
clientrects: "1",//clientrects 1噪音 2关闭
CPU: "",//CPU
memory: "",//memory 内存
deviceName: "2",//设备名称 1默认 2自定义
deviceNameStr: "DESKTOP-0BEC4282",
macAdd: "2",//macAdd 1默认 2自定义
macAddStr: "A2-32-DE-72-38-3A",//自定义
track: false,//Do Not Track
SSL: "1",//SSL 1开启 2关闭
portScan: "1",//端口扫描保护 1开启 2关闭
gpuget: true,//硬件加速
speechvoices: "1",//SpeechVoices 1噪音 2关闭
GroupName: "", //分组
startargs: "",//启动参数
}
删除浏览器环境
post
http://127.0.0.1:3001/auto/delBrower
{
"browerid": "67669048a7156909fab52d59"
}
根据id获取浏览器环境
get
http://127.0.0.1:3001/sql3db/sql3GetBrUn?browerid=676539e4a7156909fab528c7