Nodejs:Robotn, 使用 robotgo 绑定 JavaScript 和 Python 的跨平台桌面自动化系统
Nodejs:Robotn, 使用 robotgo 绑定 JavaScript 和 Python 的跨平台桌面自动化系统
通过 Robotgo 绑定 JavaScript 和 python 等编程语言,实现 Golang 跨平台、跨语言桌面自动化, 控制鼠标、键盘、位图、屏幕、窗口句柄以及全局事件监听。
项目地址: https://github.com/vcaesar/robotn
示例:
var robot = require('robotn');
robot.scroll(10, 10);
robot.mouseClick(“left”, true);
robot.moveSmooth(100, 200, 1.0, 100.0);
console.log("— Please press ctrl + shift + q —")
var ok = robotgo.AddEvents(“q”, “ctrl”, “shift”)
if ok {
console.log((“add events…”)
}
python
import robot
robot.scroll(10, 10)
robot.mouseClick(“left”, true)
robot.moveSmooth(100, 200, 1.0, 100.0)
窗口句柄例子:js<br>var fpid = robot.findIds("Google")<br>console.log("pids... ", fpid)<br><br>if (fpid.length > 0) {<br> robot.activePID(fpid[0])<br> robot.kill(fpid[0])<br>}<br>
没搞明白它能用来干什么。。。做按键精灵一类的事情?
关注一下
可以做类似的事情, 跨平台的
和 aardio 比有啥优势?
针对您提到的“Nodejs:Robotn,使用robotgo绑定JavaScript和Python的跨平台桌面自动化系统”这一话题,我想指出一些关键点和提供相关的代码示例。
首先,需要澄清的是,robotgo是一个基于Golang的桌面自动化库,它本身并不直接支持将JavaScript和Python绑定在一起。不过,在Node.js环境中,我们可以使用RobotJS来实现类似的桌面自动化功能,而无需通过robotgo。
RobotJS是一个专为Node.js设计的桌面自动化库,它允许开发者控制鼠标、键盘并读取屏幕内容。以下是一个简单的RobotJS代码示例,用于模拟键盘打字并按下回车键:
const robot = require("robotjs");
// 打印 "Hello World"
robot.typeString("Hello World");
// 模拟按下回车键
robot.keyTap("enter");
至于跨语言绑定,如果您希望在Node.js环境中调用Python代码,可以考虑使用node-pyrunner模块。这个模块允许JavaScript与Python之间的直接交互,可以在Node.js应用中同步或异步地执行Python代码。
但请注意,如果您的目标是创建一个跨平台的桌面自动化系统,并且希望同时利用JavaScript和Python的优势,那么可能需要设计一个更复杂的架构,比如通过REST API或消息队列在不同语言的服务之间通信。
总之,虽然robotgo不是直接解决方案,但RobotJS和node-pyrunner等工具可以帮助您实现跨平台的桌面自动化和跨语言交互。