Qflow 1.7 – 可视化桌面自动化工具(Desktop Automation Tool)
![图片[1]-【开源】Qflow 1.7 解放双手,桌面自动化工具。-心云博客](https://attach.52pojie.cn/forum/202512/18/220429rkvsqbhsddwghhg8.png)
无需编程基础,通过节点拖拽实现强大的桌面自动化流程。
📖 简介 (Introduction)
Qflow 是一个本人原创基于 Python 开发的轻量级可视化自动化流程编辑器。用户通过简单拖拽节点、连接连线的方式,构建复杂的桌面自动化任务,源码开放、绿色单文件、离线不联网、不需要独显!
它集成了 图像识别 (OpenCV)、键鼠模拟、音频检测 以及 逻辑控制,非常适合用于办公自动化或重复性任务处理。
✨ 核心功能 (Features)
- 🎨 可视化编辑器:支持节点拖拽、无限画布缩放/平移、框选。
- 👁️ 视觉感知:
- 图像寻找:集成 OpenCV,支持模板匹配和特征匹配(SIFT/AKAZE),支持多尺度搜索。
- 静止检测:监控屏幕特定区域是否静止(例如判断加载是否完成)。
- 🖱️ 键鼠控制:
- 支持鼠标点击、移动、拖拽、滚动。
- 支持键盘文本输入及组合键(快捷键)操作。
- 🔊 音频触发:能够检测系统音量峰值(Windows),实现”听到声音执行操作”。
- 🧠 逻辑控制:
- 包含循环 (Loop)、序列 (Sequence)、延时 (Wait)。
- 支持变量 (Set/Get) 和条件分流 (Switch),可构建复杂的业务逻辑。
- 🛠️ 便捷工具:
- 内置截图工具,直接截取屏幕目标作为节点参数。
- 支持多种主题切换(Dark/Light/Hacker)。
- 全局快捷键启停。
📋 更新日志 (Changelog)
v1.7
✨ 新增功能 (New Features)
- 通知节点 (Notify Node)
- 新增
🔔 提示节点,支持自定义文本、持续时间及提示音。 - 采用非阻塞式 Toast 弹窗(VisualTips),不影响流程运行。
- 新增
- 多屏幕支持 (Multi-Monitor Support)
- 引入虚拟屏幕坐标系 (
Virtual Screen Geometry)。
- 引入虚拟屏幕坐标系 (
- 键盘“粘贴模式”
- 在
键盘节点中新增“粘贴模式”选项。 - 利用剪贴板输入文本,解决中文乱码及输入速度过慢的问题(需安装
pyperclip)。
- 在
🛠️ 修复 (Bug Fixes)
复制代码 隐藏代码
* 修复了在不同节点间快速切换时,上一个节点的属性值错误覆盖当前节点数据的严重 Bug(通过闭包绑定解决)。
* 修复截图坐标错误
v1.6
- 新增绑定窗口节点:所有操作都可以绑定到用户选定的窗口中,确保后续操作在目标窗口内进行。
- 新增程序控制节点:
- 🚀 打开程序:支持启动外部应用程序
- ⚓ 绑定窗口:可精确绑定特定窗口,实现更稳定的窗口内操作
- 界面优化:
- 移除了 Hacker 主题,保留 Dark 和 Light 主题
- 优化了节点颜色配置,新增窗口节点专用颜色
- 功能增强:
- 日志系统重构,简化了日志级别显示
- 端口连接增强,新增 success/fail 端口支持
- 稳定性提升:
- 改进了 DPI 缩放处理
- 优化了窗口检测算法,提高了准确性
⚙️ 安装与运行 (Installation)
环境要求
- Python 3.8+
- Windows (音频检测功能依赖 Windows API,其他功能可在 macOS/Linux 运行但需调整部分代码)
步骤
-
克隆仓库
复制代码 隐藏代码git clone https://github.com/Qwejay/Qflow.git cd Qflow -
安装依赖
建议使用虚拟环境:复制代码 隐藏代码
pip install -r requirements.txt注意:如果没有安装
opencv-python,程序仍可运行,但高级图像识别功能受限。 -
运行程序
复制代码 隐藏代码
python main.py
🎮 使用说明 (Usage)
界面概览
- 左侧工具栏:包含所有可用节点,按类别分组(逻辑、动作、视觉)。
- 中间画布:主要工作区。右键点击画布也可呼出节点菜单。
- 右侧属性面板:点击任意节点,在此处配置详细参数(如点击坐标、图片阈值、循环次数等)。
- 底部日志:显示当前的运行状态和错误信息。
快捷键 (Hotkeys)
| 操作 | 快捷键 |
|---|---|
| 启动流程 | <Alt> + 1 (默认) |
| 停止流程 | <Alt> + 2 (默认) |
| 删除节点 | Delete |
| 多选节点 | 按住鼠标左键拖拽框选 |
快速开始
- 拖入一个 Start (开始) 节点。
- 拖入一个 Image (找图) 节点。
- 点击找图节点,在右侧属性面板点击 “📸 截取”,框选屏幕上的目标。
- 将 Start 的
out端口连接到 Image 的in端口。 - 拖入一个 Mouse (鼠标) 节点,设置为点击操作,连接 Image 的
found端口。 - 点击顶部 “▶ 启动” 或按
Alt+1运行。
📦 依赖库说明
- tkinter:构建 GUI 界面。
- pyautogui: 实现鼠标和键盘的模拟控制。
- opencv-python (cv2): 提供强大的图像识别算法。
- pycaw / comtypes: 用于 Windows 系统下的音频会话捕捉。
- pynput: 用于监听全局快捷键。
⚠️ 免责声明
本工具仅供学习和个人办公辅助使用。请勿用于开发违反游戏服务条款的脚本或恶意软件。作者不对使用本工具造成的任何后果负责。
📄 License
MIT License
© 版权声明
THE END











暂无评论内容