public class badminton
{//执行次数private static int count = 0;public static void main(String[] args){System.out.println("开始执行----------");//请设置需发送的好友昵称:String friendNickName = "小明";//请设置需发送的内容:String content = "这是一个测试";//发送时间 12时0分8秒Date date = getDate(12, 0, 8);//Timer定时器Timer timer = new Timer();TimerTask task = new TimerTask() {@Overridepublic void run() {searchPerson(friendNickName, content);count++;System.out.println("共发送了" + count + "天!!!");}};//延迟date毫秒执行一次发送方法timer.schedule(task, date);}//获取执行时间public static Date getDate(Integer hour, Integer minute, Integer second) {//设置执行时间Calendar calendar = Calendar.getInstance();int year = calendar.get(Calendar.YEAR);int month = calendar.get(Calendar.MONTH);int day = calendar.get(Calendar.DAY_OF_MONTH);//每天calendar.set(year, month, day, hour, minute, second);Date date = calendar.getTime();//如果启动时间超过执行时间,则明天执行if (date.before(new Date())) {date = addDay(date, 1);}return date;}// 增加或减少天数public static Date addDay(Date date, int num) {Calendar startDT = Calendar.getInstance();startDT.setTime(date);startDT.add(Calendar.DAY_OF_MONTH, num);return startDT.getTime();}private static void searchPerson(String friendNickName, String content) {// 创建Robot对象Robot robot = getRobot();//打开微信 Ctrl+Alt+Wassert robot != null;robot.keyPress(KeyEvent.VK_CONTROL);robot.keyPress(KeyEvent.VK_ALT);robot.keyPress(KeyEvent.VK_W);//释放Ctrl按键,像Ctrl,退格键,删除键这样的功能性按键,在按下后一定要释放robot.keyRelease(KeyEvent.VK_CONTROL);robot.keyRelease(KeyEvent.VK_ALT);// 该延迟不能少,否则无法搜索robot.delay(1000);// Ctrl + F 搜索指定好友robot.keyPress(KeyEvent.VK_CONTROL);robot.keyPress(KeyEvent.VK_F);robot.keyRelease(KeyEvent.VK_CONTROL);// 将好友昵称发送到剪切板Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard();Transferable tText = new StringSelection(friendNickName);clip.setContents(tText, null);// 以下两行按下了ctrl+v,完成粘贴功能robot.keyPress(KeyEvent.VK_CONTROL);robot.keyPress(KeyEvent.VK_V);robot.keyRelease(KeyEvent.VK_CONTROL);robot.delay(1000);robot.keyPress(KeyEvent.VK_ENTER);robot.delay(1000);// 发送消息try {sendMsg(content);} catch (InterruptedException e) {e.printStackTrace();}}private static void sendMsg(String content) throws InterruptedException {if (!content.equals("发送默认的信息")) {sendOneMsg(content);} else {String[] msgArr = {"能不能发","能不能","能","鸹貔","[Emm]",""};ArrayList<String> msgList = new ArrayList<>();int i = 1;while (i <= 10) {msgList.add("能不能发!");i++;}for (String item : msgList) {sendOneMsg(item);}Thread.sleep(2000);sendOneMsg("就问你能不能发!");sendOneMsg("[坏笑]");sendOneMsg("鸹貔");}}private static Robot getRobot() {// 创建Robot对象Robot robot = null;try {robot = new Robot();} catch (AWTException e) {e.printStackTrace();}return robot;}private static void sendOneMsg(String msg) {Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard();Transferable tText;//创建Robot对象Robot robot = getRobot();//延迟十秒,主要是为了预留出打开窗口的时间,括号内的单位为毫秒if (null != robot) {robot.delay(500);tText = new StringSelection(msg);clip.setContents(tText, null);// 按下了ctrl+v,完成粘贴功能robot.keyPress(KeyEvent.VK_CONTROL);robot.keyPress(KeyEvent.VK_V);robot.keyRelease(KeyEvent.VK_CONTROL);robot.delay(500);//回车发送消息robot.keyPress(KeyEvent.VK_ENTER);robot.delay(500);}}
}
Ctrl+Alt+W打开微信
Ctrl+F  搜索

Ctrl+V 粘贴

        robot.keyPress(KeyEvent.VK_CONTROL);robot.keyPress(KeyEvent.VK_ALT);robot.keyPress(KeyEvent.VK_W);

java实现微信定时发送消息相关推荐

  1. java 调用微信api发送消息

    要在 Java 中调用微信 API 发送消息,你需要做的第一步是在微信公众平台中注册自己的公众号,然后获取到自己的 AppID 和 AppSecret. 然后你可以使用微信公众平台提供的开发文档,来了 ...

  2. java访问微信接口发送消息

    最近在开发activiti流程的时候有个需求:流程到达每个审批节点后,需要向该节点的审批人发送一个消息,提示有审批需要处理. 参考了一下微信的开发者文档和网络上的一些技术博客,现在记录一下.以便后续继 ...

  3. 用Python实现微信定时发送消息

    注意:该作者博客已迁移至https://buxianshan.xyz 所需模块:(可用pip安装) itchat(是一个开源的微信个人号接口)itchat文档 apscheduler(定时任务框架)官 ...

  4. python微信群发_更新新年祝福群发!小白转战Python微信定时发送消息给群或是个人!...

    本帖最后由 新手小白学编程 于 2020-1-24 21:07 编辑 {:301_998:} 过年了发点祝福短信发现人太多了,老代码改一改直接定时群发走起! [Python] 纯文本查看 复制代码im ...

  5. 实现微信定时发送消息解决工作订餐的问题

    需要用到微信win端,使用vb语言- >编码->任务定时器 本人观看其他博主vbs实现微信自动发送消息功能_清风木子云的博客-CSDN博客制作的vb脚本有点bug代码并不能直接运行,本教程 ...

  6. python,使用微信远程控制电脑或使用微信定时发送消息关于QR.png报错的解决办法

    修改微信包itchat中的的utils.py文件,位置在--\Python35\Lib\site-packages\itchat\下,修改如下代码 把: def print_qr(fileDir):i ...

  7. Java几种定时发送消息

    使用Timer 使用ScheduledExecutorService 使用Spring Task 整合Quartz 定时任务实现的几种方式: Timer:这是java自带的java.util.Time ...

  8. python微信定时发消息_python实现给微信指定好友定时发送消息

    微信如何在设定时间自动发送信息给指定好友 微信没有定时发送信息的功能,但是可以借助小程序. 世界上最遥远的距离,不是生与死,而是小编就站在你面前,你却不知道小编爱你. 打开微信之后在搜索小程序中输入蜗 ...

  9. Java实现微信每天定时发送消息2.0 -- 柚子真好吃

    Java实现微信每天定时发送消息2.0 -- 柚子真好吃 一.实际效果 二.架构调整 三.数据库设计 四.核心代码 五.开源地址 一.实际效果 实现原理可参考1.0版本:点击跳转 内容可自定义,人员可 ...

  10. JAVA编写企业微信定时发消息

    可以使用 Java 语言编写定时发送企业微信消息的程序.首先需要获取企业微信开发者文档中提供的接口和 API,然后使用 Java 库如 HttpClient 等发送 HTTP 请求来调用这些 API. ...

最新文章

  1. Java单例模式个人总结(实例变量和类变量)
  2. 在使用Reference Source调试.Net 源代码时如何取消optimizations(代码优化)-翻译
  3. 联想g400从u盘启动计算机,联想g400u盘装系统的方法
  4. 探React Hooks
  5. 当我们输入一条SQL查询语句时,发生了什么?
  6. java mvc httpget怎么使用_springMVC正确使用GET POST PUT和DELETE方法,如何传递参数
  7. FC3服务器配置一条龙
  8. 未来 10 年的科技圈,将会因这 10 项技术而颠覆!
  9. Qt ::Warning: The name 'layoutWidget' (QWidget)...
  10. Hive Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
  11. 硬盘属于计算机主机吗,电脑主机换硬盘后还是不是原来的主机?
  12. 百度地图json_R: 民政部官网市级行政地图的绘制
  13. sigar 网络 java_使用Sigar获取服务器内存、IP、CPU、IO、MAC地址、操作系统等信息...
  14. 英伟达显卡驱动历史版本
  15. linux复制特定类型文件,Linux复制指定目录及子目录下特定类型的文件
  16. 马来西亚计算机科学与工程大学,一分钟了解世界名校马来西亚电脑科学与工程大学...
  17. c语言求最小值函数min的用法,C语言--min的宏定义
  18. 英语计算机单词怎么记,英语单词快速记忆法
  19. 奥的斯服务器显示dlm,奥的斯ACD系列电梯DLM故障的分析与处理
  20. 斗地主自动出牌函数c语言,斗地主AI出牌(示例代码)

热门文章

  1. 从“万金油”到“一招先”
  2. su - root 和 su root 的区别
  3. php的chunk_split,php函数chunk_split详解
  4. 家常炖菜,拌海带丝,炝土豆丝
  5. 超全Altium Designer16 总结--Altium Designer
  6. Vue实现表格的分页打印和导出Excel功能
  7. 盯盯拍罗勇:公司就是我最好的产品
  8. Java中统计耗时的方法
  9. Java具有哪些语言特点
  10. python实现问卷网的自动填写详解