go-vgo/robotgo
RobotGo, Go Native cross-platform RPA, GUI automation, Auto test and Computer use @vcaesar
解决的问题
Robotgo 提供了一种跨平台的方式来自动化桌面交互。它允许开发人员以编程方式控制鼠标和键盘、读取屏幕内容、管理窗口并监听全局系统事件,从而无需为 Mac、Windows 和 Linux 编写特定平台的代码。
工作原理
它作为不同操作系统中系统级 API 的封装。它提供多种后端,包括传统的基于 Cgo 的实现,以及针对 Windows、macOS、X11、Wayland 和 libei 的实验性纯 Go (Cgo-free) 后端。这使其能够模拟用户输入(点击、打字、滚动)、捕获屏幕像素或位图,并识别窗口句柄以针对特定进程。
适用对象
专为构建桌面自动化工具、自动化测试套件或具备“计算机使用”(像人类一样与 GUI 交互)能力的 AI 代理的 Go 开发人员设计。
亮点
- 跨平台支持:支持 Mac、Windows 和 Linux(包括 X11 和 Wayland)。
- 输入控制:完全控制鼠标移动、点击、键盘打字和组合键。
- 屏幕感知:能够捕获屏幕、获取像素颜色并在屏幕上查找特定的位图或图像。
- 窗口管理:查找进程 ID、激活窗口并管理窗口句柄。
- 全局事件监听:能够通过
gohook包注册键盘和鼠标事件的钩子。
相关
- 项目
- 项目
- 项目
- 项目
- 项目