一种使用ocr和蓝牙hid实现的自动化脚本方案
摘要:本文介绍了一种结合OCR文字识别与蓝牙HID硬件操作的自动化脚本方案,用于规避系统检测,实现电商数据采集等功能。该方案通过HID设备模拟真实操作,配合OCR进行价格识别,包含完整的代码实现与优化策略。关键技术包括:1)使用HTTP指令控制HID硬件;2)OCR区域定位与正则过滤;3)自然手势模拟与操作延迟。该框架可扩展应用于自动化巡检、跨APP数据同步等场景,并提供错误处理与性能优化方案。文
为了更好的实现防检测,我们实现了结合 OCR文字识别 和 蓝牙HID硬件操作 的自动化脚本。该脚本通过OCR识别屏幕文字,并通过HID模拟外设操作实现防检测的自动化流程(如电商比价、数据采集等),完整代码及关键解析如下:
一、脚本场景:电商商品价格抓取与翻页
目标:自动滑动页面 → OCR识别商品价格 → 收集数据 → 翻页循环
防风控:全程使用HID硬件模拟操作,规避无障碍服务检测。
二、前置条件
-
硬件准备:
-
Android 7.0+ 手机,安装冰狐智能辅助APP(官网下载)
-
蓝牙HID设备(如蓝牙键盘/鼠标,需提前配对手机)
-
-
权限配置:
-
开启冰狐的
截屏权限(用于OCR) -
关闭无障碍服务(改用HID操作)
-
在冰狐设置中启用
HID硬件操控选项
-
三、完整Demo代码
// ===== 1. 初始化HID连接 =====
const HID_SERVER = 'http://127.0.0.1:9123'; // HID硬件本地服务地址
function hidClick(x, y) {
httpGet(`${HID_SERVER}/click?x=${x}&y=${y}`); // 模拟点击:cite[1]
}
function hidSwipeVertical(startY, endY) {
// 从屏幕中部垂直滑动(模拟自然手势)
httpGet(`${HID_SERVER}/swip?x1=500&y1=${startY}&x2=500&y2=${endY}`);
}
// ===== 2. OCR识别核心函数 =====
function recognizePrices() {
requestScreenShot(); // 请求截屏权限
const screenHeight = device.height;
// 识别屏幕中下部的商品区域(参数为比例坐标)
const ocrResults = ocr(0.1, 0.4, 0.8, 0.5, {
awesome: { threshold: 0.85, count: 4 } // 高精度模式:cite[2]
});
const prices = [];
ocrResults.forEach(item => {
// 匹配价格文本(如¥19.9)
if (/%?¥\d+\.\d+/.test(item.text)) {
prices.push({
text: item.text,
x: item.region[0] + item.region[2]/2, // 中心坐标
y: item.region[1] + item.region[3]/2
});
}
});
return prices;
}
// ===== 3. 主流程:收集数据并翻页 =====
function main() {
let page = 1;
const allPrices = [];
while (page <= 5) { // 最多采集5页
toast("开始识别第" + page + "页");
delay(3000); // 等待页面加载
// Step 1: OCR识别当前页价格
const currentPrices = recognizePrices();
if (currentPrices.length === 0) {
console.error("识别失败,启用增量学习模型");
// 此处可触发模型训练(参考:cite[2])
break;
}
allPrices.push(...currentPrices);
// Step 2: 用HID模拟滑动翻页
hidSwipeVertical(screenHeight * 0.8, screenHeight * 0.2);
delay(2000); // 滑动动画等待
page++;
}
// Step 3: 结果处理
console.log("采集完成,共识别到价格:", allPrices);
// 此处可添加数据上报或保存到文件
}
四、关键实现解析
1. OCR高精度识别优化
-
区域定位:
ocr(0.1, 0.4, 0.8, 0.5)参数表示识别左起10%、上起40%、宽80%、高50%的矩形区域(避免无关内容干扰) -
增量学习:若识别失败,可按2方法训练自定义模型:
-
将错误样本(如“¥19.9”误识别为“¥1q.9”)加入训练库
-
在线训练后下载
model.bin并打包到APK
-
-
正则过滤:
/%?¥\d+\.\d+/匹配价格格式,避免非价格文本
2. HID防检测策略
-
完全替代无障碍服务:通过HTTP指令操作HID硬件(如
/click、/swip),系统判定为真实外设操作1 -
模拟自然手势:
swip使用曲线参数(如垂直滑动带偏移),避免固定轨迹被风控识别 -
操作延迟:关键步骤间添加
delay(),模拟人类操作间隔
3. 错误处理增强
// 当OCR识别失败时,启用备用方案
if (currentPrices.length === 0) {
// 方案1:调整识别区域再试一次
const retryResults = ocr(0.1, 0.3, 0.8, 0.6);
// 方案2:坐标点击“刷新”按钮(需提前获取位置)
hidClick(700, 200);
}
五、应用场景扩展
此框架可快速适配以下需求:
-
自动化巡检:OCR识别设备状态灯 + HID按键截图存档
-
跨APP数据同步:从微信OCR读取文本 → HID模拟输入到企业系统
-
游戏自动化:OCR识别敌人位置 → HID模拟手柄瞄准射击
六、调试与进阶
-
实时日志:在冰狐Web端查看
console.log()输出和OCR识别详情 -
性能提升:
-
减少
awesome模式使用次数(非必要场景用基础OCR) -
将HID操作封装为模块复用(如
import 'hid_utils';)
-
-
企业级需求:
-
通过冰狐
Open API将数据同步到自有服务器 -
使用
卡密系统实现脚本分发与授权管理
-
点击访问冰狐智能辅助官网,获取完整API文档和案例库
更多推荐




所有评论(0)