📜  如何使用 Javascript 和 Robotjs 包来自动设置你的桌面?

📅  最后修改于: 2022-05-13 01:56:27.802000             🧑  作者: Mango

如何使用 Javascript 和 Robotjs 包来自动设置你的桌面?

本文展示了在 Robotjs 包和 JavaScript 的帮助下使用自动化设置桌面的方法。必须遵循以下步骤。

第 1 步:从此处安装最新的 Node.js 运行时。

第二步:安装robotjs包。我们将在本地安装此软件包,即只能在工作文件夹中访问它。这可以通过在安装节点的同一目录中打开终端/命令提示符并运行以下命令来完成。

npm install robotjs

第 3 步:在与凭证文件相同的目录中创建一个 JavaScript 文件。该文件将包含用于控制操作系统和自动执行所需任务的代码。按照以下步骤执行相同操作。这是写在这个主要的 JavaScript 文件中的。

  1. 进入搜索栏。
  2. 输入“openboard”并按回车键将其打开,然后将其最小化。
  3. 再次进入搜索栏。
  4. 输入“sublime text”并按回车键将其打开,然后将其最小化。
  5. 再次进入搜索栏。
  6. 输入“chrome”并按回车键打开它。在其中打开“whatsapp web”和“gfg practice”选项卡,然后将其最小化。
  7. 再次进入搜索栏。
  8. 输入“one note”并按回车键将其打开,然后将其最小化。
  9. 再次进入搜索栏。
  10. 输入“记事本”并按回车键打开它,然后写一条“完成”消息

第 4 步:使用以下命令启动包含脚本的 JavaScript 文件。

node automate.js

完整代码:

Javascript
// Include the robotjs package
var robot = require("robotjs");
// Timeout to wait if system is slow
setTimeout(startOpenBoard, 1000);
 
//Opening the openboard
//Can learn more about these
//properties from the robotjs site
 
function startOpenBoard(){
    robot.moveMouseSmooth(98,844);
    robot.mouseClick();
    robot.typeString(" openboard ");
    robot.keyTap("enter");
     
    //Minimize openboard
    robot.moveMouseSmooth(1433,28);
    robot.mouseClick();
     
    //Start sublime text after 1s
    setTimeout(startSublimeText, 1000);
}
 
function startSublimeText(){
    robot.moveMouseSmooth(98,844);
    robot.mouseClick();
    robot.typeString(" sublime text ");
    robot.keyTap("enter");
    
   //Minimize sublime
    robot.moveMouseSmooth(1418,8);
    robot.mouseClick();
     
    //Start chrome after 1s
    setTimeout(startChrome, 1000);
}
 
function startChrome(){
    robot.moveMouseSmooth(98,844);
    robot.mouseClick();
    robot.typeString(" chrome ");
    robot.keyTap("enter");
     
    //Open whatsapp web
    robot.moveMouseSmooth(506,516);
    robot.mouseClick();
    robot.typeString("whatsapp web");
    robot.keyTap("enter");
 
    robot.moveMouseSmooth(349,389);
    robot.mouseClick();
     
    //Open a new tab
    robot.keyToggle("control","down");
    robot.keyTap("t");
    robot.keyToggle("control","up");
     
    //Open gfg practice
    robot.moveMouseSmooth(506,516);
    robot.mouseClick();
    robot.typeString("gfg practice");
    robot.keyTap("enter");
 
    robot.moveMouseSmooth(362,788);
    robot.mouseClick();
 
    //Open a new tab
    robot.keyToggle("control","down");
    robot.keyTap("t");
    robot.keyToggle("control","up");
 
    //Minimize chrome
    robot.moveMouseSmooth(1398,23);
    robot.mouseClick();
     
    //Start one note after 1s
    setTimeout(startOneNote, 1000);
}
 
function startOneNote(){
    robot.moveMouseSmooth(98,844);
    robot.mouseClick();
    robot.typeString(" oneNote ");
    robot.keyTap("enter");
     
    //Minimize one note
    robot.moveMouseSmooth(1443,10);
    robot.mouseClick();
     
    //Start notepad after 1s
    setTimeout(startNotePad, 1000);
}
 
function startNotePad(){
    robot.moveMouseSmooth(98,844);
    robot.mouseClick();
    robot.typeString(" notepad ");
    robot.keyTap("enter");
    robot.moveMouseSmooth(600,500);
    robot.mouseClick();
    //Type a "Set up done" message
    robot.typeString(" Your System is ready to use, Sir.");
}


Javascript
//Include robotjs package
var robot = require("robotjs");
 
//Show mouse location wherever it is pointing 
var id = setInterval(showMouseLocation,1000);
 
//function that
function showMouseLocation(){
var mousePosition = robot.getMousePos();
console.log(mousePosition);
//Terminate the program
//whenever mouse points
//at top left corner
//or press ctrl+c to terminate
if(mousePosition.x == 0 && mousePosition.y == 0){
    clearInterval(id); 
}
}


输出:

注意:在这里,我根据我的屏幕尺寸使用了坐标。可以通过运行以下代码并将鼠标指向要查找坐标的位置来找到他们的屏幕坐标。

运行以下命令:

node screenPosition.js

代码:

Javascript

//Include robotjs package
var robot = require("robotjs");
 
//Show mouse location wherever it is pointing 
var id = setInterval(showMouseLocation,1000);
 
//function that
function showMouseLocation(){
var mousePosition = robot.getMousePos();
console.log(mousePosition);
//Terminate the program
//whenever mouse points
//at top left corner
//or press ctrl+c to terminate
if(mousePosition.x == 0 && mousePosition.y == 0){
    clearInterval(id); 
}
}