效果

网上吵架吵不过别人怎么办?女朋友让你从1数到10000怎么办?想恶搞朋友怎么办?QQ轰炸机你值得拥有!(注:为了更好的学习编程,敲的练手项目,仅作学习使用)

自定义发送内容,自定义发送条数,“爱”他,就往死里炸他!

源码

其实思路很简单,利用Java里面的Robot类来做模拟键盘的操作,基本思路是,我们先复制好一段话,然后写个循环,在循环里模拟按ctrl+v键,完成粘贴功能,粘贴完,模拟按下回车(发送)。

Robot类可以模拟键盘和鼠标的操作,一般会用来做一些自动化测试之类的,或者完成一些简单但是需要频繁操作的功能。像抢红包,刷票都可以用Robot来做,思路都差不多。如果你够闲,甚至可以写个类去循环破解WiFi密码

import java.awt.AWTException;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.event.KeyEvent; public class QQBoom {
public static void main(String[] args) throws AWTException { String sentence = "爱我你怕了吗";//定义要发送的话 //以下三行为将上述字符串放到剪切板内,相当于做了一次复制操作
Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard();
Transferable tText = new StringSelection(sentence);
clip.setContents(tText, null); Robot robot = new Robot();//创建Robot对象
robot.delay(3000);//延迟三秒,主要是为了预留出打开窗口的时间,括号内的单位为毫秒
for (int i = 1; i <= 10; i++) {//循环十次,当然,如果爱得深,你死循环也没问题 //以下两行按下了ctrl+v,完成粘贴功能
robot.keyPress( KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_V); robot.keyRelease(KeyEvent.VK_CONTROL);//释放ctrl按键,像ctrl,退格键,删除键这样的功能性按键,在按下后一定要释放,不然会出问题。crtl如果按住没有释放,在按其他字母按键是,敲出来的回事ctrl的快捷键。
robot.delay(1000);//延迟一秒再发送,不然会一次性全发布出去,因为电脑的处理速度很快,每次粘贴发送的速度几乎是一瞬间,所以给人的感觉就是一次性发送了全部。这个时间可以自己改,想几秒发送一条都可以
robot.keyPress( KeyEvent.VK_ENTER);//回车
}
}
}

讲解

其实也没啥讲的,这么简单的东西,如果不是为了凑字数,我才不写呢!

我错了,其实还是很有含金量的,比如,比如……比如这个释放按键。

感兴趣的可以试一试删掉红框里这一行,是不是发现消息发布出去,如果你在记事本里测试的,你会发现键盘没法打字了,如果按f会直接弹出搜索框,因为ctrl是功能性按键,必须释放,不然会一直起作用。

从上面的例子,有没有一些邪恶的想法,如果代码写了个死循环,然后按住back_space键不放呢?你试试呗,键盘能打出字算我输。当然你也可以按住delete不放。

同理,我们也可以去操作鼠标,碰到一些晚上不睡觉一直打游戏的舍友,那就合理的“废了”他的键盘和鼠标。关于恶搞的小东西,我另写一篇讲

Java使用Robot完成QQ轰炸机的更多相关文章

  1. Mac环境下用Java(Sikuli+Robot)实现页游自动化

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ Sikulix(以前叫Sikuli)在Mac电脑的环境配置步骤如下: 1.从官网上下载Sikuli ...

  2. Java关于Robot类的使用以及远程桌面的实现

    利用Robot实现效果是运行之后鼠标自动定位到整个屏幕坐标系的(635,454)位置,输入wangtianze package com.wtz.util; import java.awt.AWTExc ...

  3. Java关于Robot类的使用

    利用Robot类实现自动操作,实现效果是运行之后鼠标自动定位到整个屏幕坐标系的(635,454)位置,输入wangtianze package com.wtz.util; import java.aw ...

  4. java.awt.Robot

    import java.awt.AWTException; import java.awt.Robot; import java.awt.event.KeyEvent; public class Te ...

  5. java 截屏 类似于 QQ截屏

    package com.sun.test; import java.awt.AWTException;import java.awt.BorderLayout;import java.awt.Colo ...

  6. 用python写一个非常简单的QQ轰炸机

    闲的没事,就想写一个QQ轰炸机,按照我最初的想法,这程序要根据我输入的QQ号进行轰炸,网上搜了一下,发现网上的案列略复杂,就想着自己写一个算了.. 思路:所谓轰炸机,就是给某个人发很多信息,一直刷屏, ...

  7. java使用Robot类在eclipse上实现自动编写代码

    运行时,把输入法关掉,切换成系统自带的输入法即可: 第二个类是自定义的键值Map集合,主要是为了方便输入字符串,有需要的可以自行添加: 主要的代码如下,会创建一个名称为Automaton.java的类 ...

  8. Java课程设计--山寨版QQ

    Java课设要求做一个聊天通讯窗口,索性直接照着QQ撸了一个Demo出来 界面高仿qq,初学JAVA,技术比较渣,不喜勿喷 线程开的比较多性能不是太好,一般电脑开两个客户端聊天就卡卡的 先上图 使用方 ...

  9. java代码如何发送QQ邮件

    近来想写一个qq之间互相发送邮件的工具.奈何一直报错服务错误: org.apache.commons.mail.EmailException: Sending the email to the fol ...

随机推荐

  1. Hibernate-Session使用的背后

    一.Session缓存的介绍 简单说,缓存介于应用程序和数据库之间,是临时存放数据的内存区域,作用是减少对数据库的访问次数,从而提高应用程序的运行性能.Session有一个缓存,也叫hibernate ...

  2. Elasticsearch之入门知识

    elasticsearch是一个高度可扩展得开源全文搜索和分析的引擎.可以快速.近实时的存储,搜索和分析大量数据.通常用作底层引擎技术,为具有复杂搜索功能和要求的程序提供支持. 用处: • 运行网上商 ...

  3. go time笔记

    package main import ( "time" "fmt" ) func main() { t := time.Now().UnixNano() fm ...

  4. 111 Minimum Depth of Binary Tree 二叉树的最小深度

    给定一个二叉树,找出其最小深度.最小深度是从根节点到最近叶节点的最短路径的节点数量.详见:https://leetcode.com/problems/minimum-depth-of-binary-t ...

  5. pm2日志切割

    此为pm2 日志按每天切割的示例 1.在crontab里添加定时任务 * * * >& 2.cutlog.sh 代码内容 #!/bin/bash CURPATH="/var/l ...

  6. OAuth2.0基本原理及应用

    OAuth2.0基本原理及应用 一.OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版. 在详细讲解OAuth 2.0之前,需要了解几个专 ...

  7. VS远程调试虚拟机中的程序

    1.  设置VS项目属性 => 调试页   例子如下 远程命令: C:\test.exe 工作目录 : C:\ 远程服务器名称:  192.168.xx.xx  查看网络共享 => 本地连 ...

  8. POJ1077 八数码 BFS

    BFS 几天的超时... A*算法不会,哪天再看去了. /* 倒搜超时, 改成顺序搜超时 然后把记录路径改成只记录当前点的操作,把上次的位置记录下AC..不完整的人生啊 */ #include < ...

  9. lg、ln的表示方法

    c语言中 函数 log(x) 表示是以e为底的自然对数,即 ln(x) 函数 log10(x) 以10为底的对数,即 lg(x) 以其它数为底的对数用换底公式来表示 log(a)/log(b) 函数 ...

  10. dinner 后台 nodemon 部署 Koa (关闭everything 安装或排除node_modules) # mysql 没开192.168.x.x 需要设置一下 #Navicat Premium,mysql 数据库版本有要求:mysql-5.7.17.msi 对??的支持

    tip1:新建数据库 记得选 字符集和排序规则 utf8 -- UTF-8 Unicode utf8_general_ci 后台链接部分 1. 全局管理员安装 nodemon,后台热部署(右键 管理员 ...