官网 ROBOTJS官网: https://robotjs.io/docs/ ROBOTJS源码: https://github.com/octalmage/robotjs NodeJS地址:https 依赖为Git仓库 "dependencies": { "robotjs": "git+https://github.com/octalmage/robotjs.git" } 安装依赖 npm install 打开项目下的node_modules下的`_robotjs@0.5.1@robotjs`文件夹 如果没有生成/build/Release/robotjs.node 就执行下面的操作 下载依赖 cnpm install 编译 node-gyp rebuild --python C:\Users\Jian\.windows-build-tools\python27\python.exe 构建的robotjs.node rebuild --runtime=electron --target=6.0.12 --disturl=https://atom.io/download/atom-shell --abi=72" 至此 RobotJS
今天在写electron的项目时,需要使用到robotjs。 而robotjs是c++编写的库,所以需要在不同的平台进行重新编译。 期间遇到了许多问题,mark一下。 准备依赖 对于node的c++module,编译需要有设备安装有指定的编译工具集 例如robotjs在官网的推荐编译工具集如下: ? master · mapbox/node-pre-gyp 使用原生 Node 模块 - Electron electron-rebuild - npm node-gyp - npm Building - RobotJS
RobotJS支持Mac,Windows和Linux。 没啥多说的;(写的我口干舌燥,都不知道晚上吃啥了); npm install robotjs 没毛病,再说怎么安装都要呕吐了; 鼠标事件 – 写个程序让鼠标满屏幕自己跑 好不好撒;(不会直接拿代码玩) ; var robot = require(“robotjs”); robot.setMouseDelay(2); var twoPI = Math.PI * 2.0; var screenSize twoPI * x) / width) + height; robot.moveMouse(x, y); } 键盘事件 — 比较有意思就是自己写东西; var robot = require(“robotjs so 来个定时器就妥活了; 屏幕事件 — 这个个人Jude比较无聊 做个吸色器还可以; var robot = require(“robotjs”); var mouse = robot.getMousePos
而登录跳板机和切换登录的机器不在浏览器中,需要涉及到系统的自动化(鼠标和键盘事件等),最后选择了 robotjs。 Robotjs ? Robotjs 是 nodejs 的第一个用于桌面自动化的库。他能自动化鼠标、键盘和读取屏幕,并且提供了 Mac, Windows, Linux 的跨平台支持。 ? ? 3. 之后又顺手做了一个屏幕取色的功能,考虑到 ue 走查时可能会用到,实现是通过 ox-mouse 来监听系统鼠标事件,然后通过 robotjs 来获取鼠标所在位置的颜色,之后发送到 colorpicker 实现还是通过robotjs,先输入command + space打开spotlight,然后输入terminal.app,之后输入命令和密码。过程比较傻瓜式。 59) └───────────────────────── second (0 - 59, OPTIONAL) 整个工具的思路是围绕代码库的开发流程的一些自动化工具,基于 puppeteer 和 robotjs
服务运行并输出日志到事件查看器 supervisor - 当脚本崩溃时或者当*.js 文件更改时重新启动脚本 Phusion Passenger - 直接嵌入 Nginx 的易用的进程管理工具 自动化 robotjs