当前位置:   article > 正文

JavaDemo——使用机器人发送微信消息_java 微信机器人

java 微信机器人

原理很简单,使用机器人模拟按键,使用剪贴板把内容copy进去发送;

需要先在pc登录微信客户端,然后用机器人按键,使用ctrl+alt+w快捷键打开微信,使用ctrl+f打开搜索,黏贴好友名称进行搜索,然后黏贴要发送的消息发送即可;

此外还需要注意耗时操作,需要等待操作完成后进行下一步操作,否则后续操作会发生故障;

测试demo:

  1. /**
  2. * 2022年11月22日上午10:10:11
  3. */
  4. package mytest;
  5. import java.awt.AWTException;
  6. import java.awt.Robot;
  7. import java.awt.Toolkit;
  8. import java.awt.datatransfer.Clipboard;
  9. import java.awt.datatransfer.StringSelection;
  10. import java.awt.event.KeyEvent;
  11. /**
  12. * @author xwf12
  13. *
  14. */
  15. public class MainTest {
  16. /**
  17. * @param args
  18. */
  19. public static void main(String[] args) {
  20. try {
  21. Robot robot = new Robot();//机器人
  22. Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();//剪贴板
  23. //ctrl+alt+w快捷键打开微信
  24. robot.keyPress(KeyEvent.VK_CONTROL);
  25. robot.keyPress(KeyEvent.VK_ALT);
  26. robot.keyPress(KeyEvent.VK_W);
  27. robot.keyRelease(KeyEvent.VK_CONTROL);//释放ctrl
  28. robot.keyRelease(KeyEvent.VK_ALT);//释放alt
  29. robot.delay(200);//延时200ms等待微信打开
  30. //ctrl+f光标定位到搜索框
  31. robot.keyPress(KeyEvent.VK_CONTROL);
  32. robot.keyPress(KeyEvent.VK_F);
  33. robot.keyRelease(KeyEvent.VK_CONTROL);//释放ctrl
  34. //剪贴板设置内容
  35. clipboard.setContents(new StringSelection("文件传输助手"), null);//剪贴板设置要搜索的好友名字
  36. //ctrl+v将剪贴板内容黏贴到搜索框
  37. robot.keyPress(KeyEvent.VK_CONTROL);
  38. robot.keyPress(KeyEvent.VK_V);
  39. robot.keyRelease(KeyEvent.VK_CONTROL);//释放ctrl
  40. robot.delay(1000);//延时1s等待搜索结果
  41. //回车打开搜索结果的聊天框
  42. robot.keyPress(KeyEvent.VK_ENTER);
  43. robot.delay(200);
  44. //剪贴板设置要输入的内容,ctrl+v黏贴,enter发送
  45. clipboard.setContents(new StringSelection("hello world[呲牙]"), null);
  46. robot.keyPress(KeyEvent.VK_CONTROL);
  47. robot.keyPress(KeyEvent.VK_V);
  48. robot.keyRelease(KeyEvent.VK_CONTROL);//释放ctrl
  49. robot.keyPress(KeyEvent.VK_ENTER);//发送消息
  50. robot.delay(100);
  51. for (int i = 1; i<= 5; i++) {
  52. clipboard.setContents(new StringSelection("test[坏笑]" + i), null);
  53. robot.keyPress(KeyEvent.VK_CONTROL);
  54. robot.keyPress(KeyEvent.VK_V);
  55. robot.keyRelease(KeyEvent.VK_CONTROL);//释放ctrl
  56. robot.keyPress(KeyEvent.VK_ENTER);//发送消息
  57. robot.delay(100);
  58. }
  59. //关闭聊天窗口
  60. robot.keyPress(KeyEvent.VK_ALT);
  61. robot.keyPress(KeyEvent.VK_F4);
  62. robot.keyRelease(KeyEvent.VK_ALT);
  63. } catch (AWTException e) {
  64. e.printStackTrace();
  65. }
  66. }
  67. }

程序运行结果:

 

PS:这个Robot类好像能干许多有意思的事,除了按键还能控制鼠标移动、点击鼠标、获取屏幕某个坐标的颜色、截屏,可以用来进行一些自动化操作;

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/178531
推荐阅读
相关标签
  

闽ICP备14008679号