Skip to content

About

实现电脑屏幕的自动点击,能够设置识图点击、滚动、步骤跳转和循环的屏幕点击工具

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

屏幕自动点击器图标

屏幕自动点击器

在屏幕上找图、点击、滚动,并用成功与失败分支连接每一步。

Windows 本地运行 · 可视化流程编辑 · OpenCV 模板匹配


屏幕自动点击器是一个 Windows 本地工具。你可以把“识图、点击、滚动”组成流程,为每个步骤指定成功和失败后的去向。运行时,它在指定的屏幕区域截图,用 OpenCV 匹配图像,并通过 Windows 鼠标输入执行动作。

当前版本是可运行的原型,适合在固定分辨率、缩放比例和窗口位置下使用。它不依赖在线服务;尚不支持操作录制、OCR、后台点击或跨电脑自动适配。

✨ 功能亮点

功能 说明
🔎 区域识图 自定义模板、搜索区域、相似度阈值和识图超时
🖱️ 点击与滚动 点击固定坐标、识图匹配位置或预设坐标;按指定格数滚动
🔀 条件流程 每一步分别设置成功、失败去向,支持循环次数上限
🧭 可视化编辑 自上而下的流程图,判断节点和回路清晰可见,点击节点即可编辑
🛑 运行保护 校验屏幕、DPI、目标窗口位置和前台状态;ESC 可随时停止
📋 运行日志 界面实时显示结果,并在本机保存完整日志

🖥️ 界面与示例

左侧选择步骤,中间查看流程图,右侧修改所选步骤;下方是运行日志。识图步骤显示为判断菱形,成功与失败分支分别向下连接,回路沿侧边返回。

仓库只附带一个通用演示:查找“继续”按钮 → 点击它 → 确认按钮消失。它使用合成模板和占位窗口坐标,目的是演示配置格式,不能直接用于你的真实应用。

flowchart TD
    A([开始]) --> B{找到“继续”按钮?}
    B -- 成功 --> C[点击识图位置]
    B -- 失败 --> E([结束])
    C --> D{按钮已消失?}
    D -- 成功 --> E
    D -- 失败 --> E
Loading

首次启动时,程序会从 examples/ 复制通用示例,生成你本机的 workflow.json 和 config.json。它们以及 assets/ 中的个人模板都被 .gitignore 排除。之后的编辑和标定只影响你的本地文件,不会改动公开示例。

🚀 安装与启动

需要 Windows 10/11 和 Python 3.10+。在项目目录打开 CMD,依次运行:

py -3 -m venv .venv
.venv\Scripts\python.exe -m pip install -r requirements.txt
启动界面.cmd

以后可以直接双击 启动界面.cmd。启动脚本优先使用 .venv;如果没有,则尝试 D:\anaconda3\python.exe,最后尝试 py -3。

📖 创建流程

  1. 用 tools/calibrate.py 读取目标的物理屏幕坐标,并框选小范围识图区。
  2. 在界面的“识图配置”中新增区域、选择模板图片、填写识图范围和阈值。
  3. 添加识图、点击或滚动步骤,为每一步设置成功与失败后的下一步。
  4. 在流程图中核对分支和循环,设置循环次数上限,点击“保存”。
  5. 将目标窗口移到标定位置,点击“运行流程”;程序留出 3 秒供你切回目标窗口。运行时按 ESC 或点击“停止”可中止。

启动标定工具:

.venv\Scripts\python.exe tools\calibrate.py

在预览图中点击会显示坐标,拖框会显示区域;按 S 保存裁剪图,按 Esc 退出。坐标、分辨率和窗口位置都需要按自己的电脑重新设置。请同时用“目标出现”和“目标未出现”的截图检查识图阈值。

程序日志中的“输入已发送”只表示 Windows 接受了模拟鼠标事件;目标程序是否完成操作,仍应由后续识图步骤验证。识图失败到达结束节点时,程序可能把失败区域截图保存在本地 debug/,方便排查。

🧩 项目结构

路径 用途
gui.py 图形界面、步骤编辑和流程图
workflow.py 流程校验与执行
vision.py 模板匹配辅助
input_win32.py、windows_target.py Windows 鼠标输入和目标窗口校验
local_project.py 首次启动时生成本地配置
tools/calibrate.py 坐标与识图区域标定
tests/ 单元测试

运行测试:

.venv\Scripts\python.exe -m unittest discover -s tests -v

About

实现电脑屏幕的自动点击,能够设置识图点击、滚动、步骤跳转和循环的屏幕点击工具

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages