按钮是图片、系统没接口?我用找图加OCR把它自动化了

接了个活:公司用了八年的行业客户端,要每天从里面导数据。这软件没有接口,界面是自绘的,元素捕获抓不到,连导出按钮都是一张贴图。

以前每天人工点一遍,十分钟,无聊但不敢错。后来我用光刃RPA 把它做成了机器人,核心思路就一句话:元素抓不到,就让机器人看。一、三件套兜底,总有一个抓得到这类老系统有一套降级打法:1. 先试窗口元素捕获,标准控件直接读控件树,最稳;2. 抓不到就图像找图,把按钮截成小图,让机器人在屏幕上找坐标;3. 图里有字就上 OCR,识别文字顺便定位。我这套流程里,三个都用上了。二、找图:把贴图按钮变成坐标做法很笨但有效:把那个导出按钮截图,裁得只剩按钮本体,流程里用图像找图拿到坐标,再接一个鼠标点击。有个坑必须说:截图要和实际显示同分辨率、同缩放。我们电脑是 125% 缩放,头一版截图是在系统默认缩放下截的,死活找不到,查了半天才发现是缩放对不上。三、OCR:把图片里的数字读出来界面上有块本月累计:8,732.50,要读进流程做比对。用 OCR 识别区域框住那块,返回文本后用文本指令清洗成数字,存进变量。数字清晰的话识别很少出错;实在不放心,就在前面加一步裁剪放大,准确率还能再提一截。四、稳定性是磨出来的老系统自动化最怕偶尔不灵,我加了三道保险:1. 找图失败自动重试 3 次,间隔 1 秒;2. 还找不到就截图存档加写日志,跑完看一眼日志就知道哪天出的岔子;3. 鼠标用拟人轨迹移动、点击加随机延时,有些老软件会检测鼠标像不像机器,直线瞬移容易被它盯上。跑了两周,一天都没掉过链子。五、丑话说在前面图像方案的稳定性天然不如元素定位:换分辨率、换主题、界面改版,截图都得重做。所以我的顺序永远是:能用元素就用元素,实在不行才上图像,并且一定配日志告警。这套东西不难,难的是你敢把看起来只能人做的活,交给机器人试一次。

相关推荐
大文说跨境1 小时前
用 Python 自动化检测浏览器环境指纹:WebRTC 泄露、Canvas 哈希与时区一致性校验
python·自动化·webrtc
海宇服务1 小时前
零信任架构实战:基于海宇车辆vin码查车辆信息详版构建自动化汽配云仓参配核验网关
java·人工智能·架构·自动化
派小心.1 小时前
多端数据分析平台的漏斗可以跨端搭建吗?5 步搭出跨端转化漏斗
大数据·运维·服务器·前端·数据分析
芷栀夏1 小时前
极空间部署Photopea:Docker运行、网页修图与多设备使用
运维·docker·容器
见闻小天地1 小时前
数据中心柴发出口保护怎么选?Emax 与 Tmax XT 的定位与分工
大数据·运维·人工智能·业界资讯
迈威通信2 小时前
迈威 MISCOM8212GP-4XGF-8GTPoE90-DC48 接入层实践:高密度 PoE++ 与万兆上行的整合方案
运维·网络·信息与通信
小小的木头人2 小时前
CentOS 7.9 离线安装 NVIDIA Container Toolkit:1.14.0 与 1.20.1 两种版本方案
linux·运维·centos
哭哭啼2 小时前
Linux 资源紧缺模拟:CPU、内存、磁盘与文件描述符压力测试
linux·运维·压力测试
酒神dnspup2 小时前
多地区网站可用性监控怎么做?DNSPup 从基线到告警的完整实战
运维·ios·云计算·iphone·dns·网络监控