软件介绍
本工具是基于 Python+PyQt5 开发的 Windows 自动化脚本工具,该工具集成了图像识别点击、坐标点击、按键与文字输入,可视化流程编排,可用于办公自动化、游戏挂机等场景,提升重复操作效率。
软件功能
图像识别点击:通过截取界面图像,可在屏幕或指定窗口中自动寻找预设的图片目标并点击,自带相似度阈值调节。
固定坐标点击:采集屏幕 XY 坐标,运行时直接点击固定点位,无需识别图片。
键盘按键输入:可模拟单键、Ctrl/Alt/Shift 组合快捷键输入,提供 3 种按键工作模式:1.按键一次(按下立刻松开);2.长按按键到指定时间松开(按住按键固定毫秒后松开);3.按住直到图像出现(持续按住按键,实时循环识图,检测到目标截图后自动松开按键,未识别到会停在该步骤)
文字输入:可添加,一段文字内容,在运行时候模拟键盘自动输入自定义文本,支持单行、多行文字。
鼠标拖拽:模拟鼠标按住拖动动作,支持左键 / 右键拖拽,平滑移动无瞬移。
可视化流程编排:图形化步骤列表中支持增删和上下移动,每一步均可独立配置点击类型、等待时间、相似度等参数,并支持步骤跳转,实现条件分支逻辑。
全局热键控制:支持自定义全局快捷键(默认F12),可一键启动或停止任务无需切换窗口即可控制运行状态;后台窗口执行;指定窗口绑定(通过“选取窗口”功能锁定目标程序(HWND))和后台消息注入(使窗口处于后台或被遮挡,也能通过 Windows 消息机制模拟点击,不干扰前台工作,也不影响鼠标键盘的正常使用)。特别说明:直接从驱动层读取硬件输入(鼠标/键盘)的游戏则无法实现点击效果。
配置保存与复用:支持一键保存、加载配置文件。
灵活循环策略:支持定时执行、无限循环、指定次数循环,X轴与Y轴点击偏移量、每个步骤的随机延迟时间。
使用说明
控制流程:添加好步骤或加载配置后可以开始执行、暂停和停止执行。
文件操作:用于保存步骤列表的流程,便于下一次加载使用。
定时执行:用于设定未来时间的执行,设定好“开始时间”和“结束时间”并勾选“启用定时执行”后点击开始执行按钮就可以了,时间到了自动执行步骤列表的流程,系统时间超过设定结束时间后会立即终止所有操作。
目标窗口设置:用于后台执行点击,不影响操作,该工具点击原理依赖 Windows 消息队列,是通过 SendMessage发送消息给系统,系统会转发给窗口实现点击的。(注意:直接从驱动层读取硬件输入(鼠标/键盘中断)的游戏则无法实现点击效果)。
热键设置:用于一键开始执行或者暂停流程,可自定义录入热键,避免和某些案件冲突(热键默认为F12)。
高级设置:包含了流程的循环设置(可以设置步骤列表的执行次数,默认无限循环),点击偏移设置(用于模拟坐标点(图像的中心位置)进行鼠标点击的上下左右偏移,通过随机微调点击位置,避免一些游戏对鼠标操作的检测)、随机延迟点击设置(在步骤列表中设置的等待时间的基础上再增加随机延时,避免点击时间固定,降低被检测识别风险,默认随机延迟时间是在100毫秒至1000毫秒之间)
操作步骤:添加图像(通过截取图像进行识别点击),添加坐标(在屏幕选点截取坐标),添加键盘(模拟单个按键或者Ctrl/Alt/Shift 组合快捷键,有3种模式),添加文字(可用于一段文字输出),鼠标拖动(模拟鼠标拖动),上移和下移(用于调整步骤的执行顺序),删除(用于删除不要的步骤)。(详见核心能力的说明)
步骤列表:步骤(流程执行的顺序),类型(图像识别点击和坐标点击),点击类型(左键单击、右键单击、双击、跳转,其中跳转是用于类型是图像识别,就是该步骤识别到图像就跳转到对应步骤去),等待(执行等待时间,1秒等于1000毫秒,默认1000毫秒),相似度(图像识别的相似度,默认0.8),接受偏移和接受随机延迟(可自定义步骤是否进行鼠标点击的偏移和点击延迟,默认勾选,但需要自行勾选上“启动偏移”和“启动随机延迟”),跳转设置(只能在“点击类型”为跳转的情况下才能设置为跳转步骤)。
其他说明
1、后台点击用不了或者虚假的问题。这个我也说了很多次,后台模式是的点击逻辑是通过 Windows 消息机制模拟点击的,而目前大部分游戏都是从驱动层读取硬件输入(鼠标/键盘)的,则大部分游戏则无法实现点击效果。
2、图片识别无效的。这个问题可以尝试调低相似度的设置,下降到0.75或者0.7之类的,这个我在调试时候的输出日志中检查过,有些截图太小的话匹配提醒相似度大概只有0.71左右,如果设置成0.8的话就会被判定未识别到图像。
3、点击时间问题。点击时间的用时逻辑是步骤列表中的“等待时间”+其他设置中的“随机延迟”时间(如果勾选了“启动随机延迟”的话)。步骤列表中的“等待时间”是可以自己设置的,1秒等于1000毫秒(ms)
4、点击偏移设置问题。其他设置中的“启用偏移”勾选后是按照他下面设置的X、Y设置的偏移进行点击的,在步骤列表中的每个步骤可以自行勾选某一个步骤是否接受点击偏移,接受随机延迟也是一样的。
5、工具太大问题。工具用到好多个库的文件(工具包含 OpenCV、PyQt5、numpy、PIL、pynput、pywin32 等库),而大部分人的电脑没有响应的库,所以我只能相应的库文件一同打包成可运行的EXE文件,不然我直接上传的100多KB的代码文件就行了。
6、图片识别跳转逻辑问题。(1)未设置跳转的情况:找到图像(点击识别到的图像位置 → 等待本步骤的等待时间(含随机延迟)→ 继续执行下一步);没找到图像(不点击,跳过本步骤 → 等待本步骤的等待时间(含随机延迟)→ 继续执行下一步);(2)设置了跳转后该步骤就不点击,而是作为条件跳转的判定,会根据“找到”或“未找到”分别跳转到指定步骤。总结起来就是:没设置跳转的话,找到图片就点击后进行下一步轴,没找到就不点击,直接执行下一步骤;设置了跳转步骤的话,比如设置了“找到跳转”,则找到图片后不点击图像 → 直接跳转到指定的步骤 → 等待本步骤的等待时间后从指定的步骤开始继续执行,在没找到图片时,则不进行跳转,而是按步骤列表顺序往下面一个步骤执行。


隐藏内容需要回复可以看见