一、为什么要使用自动化?
1.提高工作效率,节约时间,解脱双手。
二、自动化的使用场景是什么?
1.重复且大量的工作
2.此工作的工作方式是有一定的规律可循的
三、自动化的使用步骤
1.创建java项目
2.编写Robots类
1 import java.awt.AWTException;
2 import java.awt.Toolkit;
3 import java.awt.Robot;
4 import java.awt.event.InputEvent;
5 import java.awt.event.KeyEvent;
6
7 public class Robots {
8 /**
9 * 移动鼠标的方法
10 */
11 public static final void move(int x,int y,int time) {
12 try {
13 /**创建工具包对象*/
14 Toolkit toolkit = Toolkit.getDefaultToolkit();
15 /**创建自动化对象*/
16 Robot robot = new Robot();
17 robot.mouseMove(x, y); //将鼠标移动到指定位置
18 robot.delay(time); //鼠标点击后的睡眠时间
19 }catch (Exception e) {
20 System.out.println("机器人创建失败");
21 }
22 }
23
24 //////////////////////////////////////////////////////////////////////
25 //////////////////////////////////////////////////////////////////////
26
27
28 /**
29 * 鼠标点击操作
30 *
31 * @param x:x坐标
32 * @param y:y坐标
33 */
34 public static final void click(int x, int y,int time) {
35 try {
36 /**创建工具包对象*/
37 Toolkit toolkit = Toolkit.getDefaultToolkit();
38 /**创建自动化对象*/
39 Robot robot = new Robot();
40 /**利用工具包对象获取屏幕分辨率*/
41 if (x == null) {
42 x = toolkit.getScreenSize().width / 2;
43 }
44 if (y == null) {
45 y = toolkit.getScreenSize().height / 2;
46 }
47 /**
48 * 移动鼠标到指定位置
49 * 然后按下鼠标左键,再松开,模拟单击操作
50 */
51 for(int i=0;i<count;i++) {
52 robot.mouseMove(x, y); //将鼠标移动到指定位置
53 //按下鼠标
54 robot.mousePress(InputEvent.BUTTON1_DOWN_MASK);
55 //释放鼠标
56 robot.mouseRelease(InputEvent.BUTTON1_DOWN_MASK);
57 robot.delay(time); //鼠标点击后的睡眠时间
58 }
59 } catch (AWTException e) {
60 e.printStackTrace();
61 }
62 }
63
64 /////////////////////////////////////////////////////////////
65 /////////////////////////////////////////////////////////////
66
67 /**
68 *键盘操作
69 *keycode为键盘的键值
70 **/
71 public static final void press(int keycode,int time) {
72 try {
73 Robot robot = new Robot();
74 robot.keyPress(keycode); //按下
75 robot.keyRelease(keycode); //松开
76 robot.delay(time); //休眠时间
77 } catch (AWTException e) {
78 e.printStackTrace();
79 }
80 }
81 }
3.编写Key类
1 public class Key {
2 public static final int C = 67;
3 public static final int A = 65;
4 public static final int V = 86;
5 public static final int Enter = 10;
6 public static final int Shift = 16;
7 public static final int Ctrl = 17;
8 }
4.测试
1 public static void main(String[] a){
2 //点击x:1000,y:1000,time:1000
3 Robots.click(1000,1000,1000);
4 //按下V键1秒
5 Robots.press(Key.V,1000);
6 //移动x:1000,y:1000,time:1000
7 Robots.move(1000,1000,1000);
8 }