溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何使用Nodejs+robotjs控制鼠標(biāo)鍵盤

發(fā)布時(shí)間:2021-01-30 09:44:36 來源:億速云 閱讀:565 作者:小新 欄目:web開發(fā)

這篇文章主要介紹了如何使用Nodejs+robotjs控制鼠標(biāo)鍵盤,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

Nodejs使用robotjs輕松控制鼠標(biāo)鍵盤

最近剛完成了基于vue的聊天系統(tǒng)的開發(fā),閑下來之余,鼓搗了一下node腳本,每天上班開機(jī)挺麻煩,要一個(gè)一個(gè)打開軟件、手動(dòng)連wifi;于是乎,鼓搗出了一個(gè)很簡單的自動(dòng)執(zhí)行腳本,執(zhí)行 node 該文件名.js后,自動(dòng)聯(lián)網(wǎng)打開各種軟件;

本例首先安裝 npm i robotjsnpm i opn (opn與控制鼠標(biāo)鍵盤無關(guān))

簡單的代碼如下(npm安裝好依賴后,以下代碼可直接復(fù)制執(zhí)行):

const opn = require('opn');     //執(zhí)行語句
var robot = require("robotjs");   //控制鼠標(biāo)鍵盤等操作
 
var screenSize = robot.getScreenSize();
robot.moveMouseSmooth(screenSize.width-140, screenSize.height-20);	//移動(dòng)鼠標(biāo)
robot.setMouseDelay(1000)	
robot.mouseClick();	 //鼠標(biāo)點(diǎn)擊
robot.moveMouseSmooth(screenSize.width-140, screenSize.height-560);
robot.setMouseDelay(2000)
robot.mouseClick()
robot.moveMouseSmooth(screenSize.width-140, screenSize.height-490);
robot.setMouseDelay(1000)
robot.mouseClick()

opn('C:/Users/seagm/Desktop/小白入門手冊.txt');	//自動(dòng)打開程序(文件地址自己修改即可)
opn('C:/Users/seagm/Desktop/GitHub Desktop')
opn('C:/Users/seagm/Desktop/Visual Studio Code')
opn('', {app: 'chrome'});
setTimeout(()=>{opn('C:/Program Files (x86)/Tencent/WeChat/WeChat.exe')},2000)

有4個(gè)重點(diǎn):

  • 引入opn,也可直接使用node自帶的child_process;用來執(zhí)行操作文件的語句

  • 引入robotjs,一個(gè)專門做nodejs桌面自動(dòng)化的庫ROBOT官網(wǎng)直達(dá)

  • 留意操作文件的URL參數(shù)的斜杠方向

  • 如果安裝robotjs報(bào)錯(cuò),以管理員身份執(zhí)行 npm install --global --production windows-build-tools,再 npm i robotjs

當(dāng)然想更牛的話可以寫個(gè)開機(jī)自動(dòng)執(zhí)行該文件,不用再 node 文件名.js 了,這里拋磚引玉,一個(gè)自動(dòng)化小栗子來幫助不大懂robotjs的伙伴們,robotjs具體的api可見上面的官網(wǎng)直達(dá)。。。
從此我每天又節(jié)省了30秒了,哈哈

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“如何使用Nodejs+robotjs控制鼠標(biāo)鍵盤”這篇文章對大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI