工作需要,每天晚上十点要在宿舍长群里发送宿舍人数消息
我又懒得天天复制粘贴重复内容
所以就请来了救兵(机器人)来帮忙。
实现原理将剪切板的内容通过复制粘贴,给发送到QQ群中去
模拟真实操作进行发送信息。
public class Robot {
public static void main(String[] args)throws AWTException {
// 前期准备
Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard();
Transferable tText = null;
Toolkit tolkit = Toolkit.getDefaultToolkit();
java.awt.Robot robot = new java.awt.Robot();
//剪切板内容,要发的内容多的话,可以补充
String[] lists={"517应到6人,实到5人,一人请假回家一直未归。"};
//三秒后开始开始执行
robot.delay(3000);
while (true) {
// 接收要发的内容这里仅有一条消息,直接接收第0条数据
tText = new StringSelection(lists[0]);
clip.setContents(tText, null);
robot.keyPress( KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_V);
// 粘贴文本信息
robot.keyRelease(KeyEvent.VK_CONTROL);
// 发送信息
robot.keyPress( KeyEvent.VK_ENTER);
robot.delay(1000);
// 延迟一天的时间
for (int i = 0; i <24; i++) {//24h
for (int j = 0; j <60; j++) {//60min
robot.delay(60000);//60s=1min
}
}
}
}
}
评估
- 项目背景
不会使用QQ机器人API文档,短时间内也没时间去研究
- 存在缺点必须登录QQ且鼠标光标要在QQ聊天框次才可以
- 缺点补偿装个虚拟机,在虚拟机里面跑这些程序
- 设计好处本人用的是校园网,学校校园网采用的是DHCP动态分配ip
DHCP原理:对于申请ip的PC机,动态分配一个ip,并会设置一个ip租用期,一般是2hour
时间到了之后会检查其主机是否在使用,如果主机不在使用会剥夺ip(即断网),如在使用
则再给其分配一个ip(一般也就是原来的ip),也可以解释为续租ip。
就像我,怎么可能会天天重启电脑,更不可能天天重复联网! 所以,我电脑都会开一个虚拟机,虚拟机也是动态分配的主机ip 这样我的电脑一直就是“使用状态”,也就不会断网。
所以这样也算不上占用资源,只能说是针对于我个人而言的最佳决策。



