Java 指定微信好友自動發(fā)送消息的實現(xiàn)示例
Backgroud
原理很簡單:robot類模擬鍵盤輸入,快捷鍵打開微信,搜索好友,把發(fā)送內(nèi)容發(fā)送到粘貼板實現(xiàn)。
程序源碼
package com.cloudansys.test;
import java.awt.*;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.event.KeyEvent;
public class T6 {
public static void main(String[] args) throws InterruptedException {
// 好友昵稱
String friendNickName = "不器";
// String friendNickName = "文件傳輸助手";
searchMyFriendAndSend(friendNickName);
}
private static void searchMyFriendAndSend(String friendNickName) throws InterruptedException {
// 創(chuàng)建Robot對象
Robot robot = null;
try {
robot = new Robot();
} catch (AWTException e) {
e.printStackTrace();
}
//打開微信 Ctrl+Alt+W
assert 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);
// 將好友昵稱發(fā)送到剪切板
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);
// 發(fā)送消息
sendMsg();
}
private static void sendMsg() throws InterruptedException {
String[] mottoes = {
"我只愛你四天,春天夏天秋天冬天!",
"我只愛你三天,昨天,今天,明天!",
"我只愛你兩天,白天,黑天!",
"我只愛你一天,每一天!",
"[玫瑰]愛你么么噠!",
"[呲牙][壞笑]",
"[奸笑]"
};
for (String motto : mottoes) {
sendOneMsg(motto);
}
Thread.sleep(2000);
sendOneMsg("[得意]就問你,膩不膩害!");
}
}
效果如下圖所示

到此這篇關(guān)于Java 指定微信好友自動發(fā)送消息的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)Java 微信好友自動發(fā)送 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java中JDBC實現(xiàn)動態(tài)查詢的實例詳解
從多個查詢條件中隨機選擇若干個組合成一個DQL語句進行查詢,這一過程叫做動態(tài)查詢。下面通過實例代碼給大家講解JDBC實現(xiàn)動態(tài)查詢的方法,需要的朋友參考下吧2017-07-07
SpringBoot項目中同時操作多個數(shù)據(jù)庫的實現(xiàn)方法
在實際項目開發(fā)中可能存在需要同時操作兩個數(shù)據(jù)庫的場景,本文主要介紹了SpringBoot項目中同時操作多個數(shù)據(jù)庫的實現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03
JavaWeb實戰(zhàn)之開發(fā)網(wǎng)上購物系統(tǒng)(超詳細)
這篇文章主要介紹了JavaWeb實戰(zhàn)之開發(fā)網(wǎng)上購物系統(tǒng)(超詳細),文中有非常詳細的代碼示例,對正在學習java的小伙伴們有很好的幫助,需要的朋友可以參考下2021-04-04
一文詳解SpringBoot如何優(yōu)雅地實現(xiàn)異步調(diào)用
SpringBoot想必大家都用過,但是大家平時使用發(fā)布的接口大都是同步的,那么你知道如何優(yōu)雅的實現(xiàn)異步呢?這篇文章就來和大家詳細聊聊2023-03-03
基于RocketMQ實現(xiàn)分布式事務(wù)的方法
了保證系統(tǒng)數(shù)據(jù)的一致性,我們需要確保這些服務(wù)中的操作要么全部成功,要么全部失敗,通過使用RocketMQ實現(xiàn)分布式事務(wù),我們可以協(xié)調(diào)這些服務(wù)的操作,保證數(shù)據(jù)的一致性,這篇文章主要介紹了基于RocketMQ實現(xiàn)分布式事務(wù),需要的朋友可以參考下2024-03-03
k8s部署springboot實現(xiàn)前后端分離項目
本文主要介紹了k8s部署springboot實現(xiàn)前后端分離項目,主要包括配置文件、鏡像構(gòu)建和容器編排等方面,具有一定的參考價值,感興趣的可以了解一下2024-01-01
springboot集成druid,多數(shù)據(jù)源可視化,p6spy問題
這篇文章主要介紹了springboot集成druid,多數(shù)據(jù)源可視化,p6spy問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01

