闲的没事,就想写一个QQ轰炸机,按照我最初的想法,这程序要根据我输入的QQ号进行轰炸,网上搜了一下,发现网上的案列略复杂,就想着本身写一个算了。。python
思路:所谓轰炸机,就是给某我的发不少信息,一直刷屏,那我只须要实现两个基本的要求就好了函数
一、程序能在消息输入框自动输入信息spa
二、程序能自动把信息发送过去3d
按照这个思路,我查到python的pynput库能控制鼠标和键盘,而且发现qq打开一个聊天弹窗,键盘的输入就是将要发送的信息,那接下来问题就好解决了code
首先写一个函数,函数功能是控制键盘输入你想要的信息,代码以下:blog
def keyboard_input(string): ''' :param string: 你想要发送的信息 :return: None ''' from pynput.keyboard import Key,Controller #导入相应的库 keyboard = Controller() #开始控制键盘 keyboard.type(string) #键盘输入string return None
其次,用另外一个函数实现发送功能,代码以下:input
def mouse_click():#点击发送消息 from pynput.mouse import Button,Controller #导入相应的库 mouse = Controller() #开始控制鼠标 mouse.press(Button.left) # 按住鼠标左键 mouse.release(Button.left) # 放开鼠标左键 return None
注意,我这样没有设置鼠标的位置,这就须要你把鼠标停放在发送按钮上string
最后,用一个函数来控制发送多少条在信息,代码以下:class
def main(number,string):#参数分别表示你要发多少条信息和发送的内容 import time #导入time time.sleep(5) # 此时暂停5s,方便你打开聊天窗,并把鼠标停放在发送按钮上 for i in range(number):#用循环来控制你发送多少条消息 keyboard_input(string) mouse_click()
如今,你只须要运行这个函数,而后你有5s的时间打开聊天框,把鼠标停放在发送按钮上,就实现了qq消息轰炸,虽然很弱智,很简单,可是功能仍是实现了的import
效果图以下:
完整代码:
def keyboard_input(string): ''' :param string: 你想要发送的信息 :return: None ''' from pynput.keyboard import Key,Controller #导入相应的库 keyboard = Controller() #开始控制键盘 keyboard.type(string) #键盘输入string return None def mouse_click():#点击发送消息 from pynput.mouse import Button,Controller #导入相应的库 mouse = Controller() #开始控制鼠标 mouse.press(Button.left) # 按住鼠标左键 mouse.release(Button.left) # 放开鼠标左键 return None def main(number,string):#参数分别表示你要发多少条信息和发送的内容 import time #导入time time.sleep(5) # 此时暂停5s,方便你打开聊天窗,并把鼠标停放在发送按钮上 for i in range(number):#用循环来控制你发送多少条消息 keyboard_input(string) mouse_click() time.sleep(0.2) if __name__ == '__main__': main(20,"我太牛逼了")
总结:虽然代码才20多行,可是基本功能仍是实现了的,可是也能够改进一下,好比:发送消息看上去很枯燥,你能够写一个消息列表,每次循环随机选取一个消息发送;还能够设置延时,能够设置多久时间发送多少条消息。当你把一些附加小功能完善后,你还能够把你写的这个程序打包起来,造成一个exe文件,发送给你的朋友,即便他电脑上没有python解释器,也能够运行,具体的打包过程我就不写了,自行百度。