​ 在讲解代码之前我们先来回忆一下,平时我们发送消息时,先打开微信或QQ的界面,在信息栏中输入你要发送的内容在点击发送或通过快捷键发送。如果要发送表情时,先打开微信或QQ的界面,在点击表情包中你要发送的表情在点击发送或通过快捷键发送

​ 而这个简易版微信或QQ轰炸就是通过pyautogui模块来模拟键盘和鼠标来发送消息,tkinter模块来将其包装成一个应用界面

pyautogui模块

https://www.cnblogs.com/MrYang161/p/11519282.html

tkinter模块

https://www.cnblogs.com/MrYang161/p/11528037.html

代码解析

下面的代码是以发送表情为例

#先通过这个找到需要点击的位置
import pyautogui as gui
screenWidth, screenHeight = gui.size()#以双整数元组的形式返回屏幕的(宽度,高度)以像素为单位
currentMouseX, currentMouseY = gui.position()
# '''
# 以双整数元组的形式返回鼠标指针的当前xy坐标。Args: x (int, None, optional)
# ——如果没有,这个参数将覆盖返回值中的x。y (int, None, optional)
# ——如果不是None,这个参数将覆盖返回值中的y。返回:(x, y)鼠标当前xy坐标的元组。注意:position() functon不检查故障保险。
# '''
print(screenWidth, screenHeight )
print(currentMouseX, currentMouseY ) #在将位置改完之后在运行以下代码
import tkinter
from tkinter import messagebox from tkinter import ttk
import pyautogui as gui
import time def run(): time.sleep(2)
gui.hotkey('Alt', 'Tab')
gui.click(951, 685)#点击表情包的位置(要更改)
time.sleep(0.6) gui.click(967, 330)#点击要发送的表情的位置(要更改)
gui.click(953, 695)#点击信息栏的位置(要更改)
time.sleep(0.2)
gui.hotkey('ctrl', 'c')
time.sleep(0.2)
gui.hotkey('ctrl', 'enter')
for i in range(4): gui.hotkey('ctrl', 'v')
time.sleep(0.2)
gui.hotkey('ctrl', 'enter')
def take():
time.sleep(2)
gui.hotkey('Alt', 'Tab')
gui.click(951, 685)#点击表情包的位置(要更改)
time.sleep(0.6) gui.click(967, 330)#点击要发送的表情的位置(要更改)
gui.click(953, 695)#点击信息栏的位置(要更改)
time.sleep(0.2)
gui.hotkey('ctrl', 'c')
time.sleep(0.2)
gui.hotkey('ctrl', 'enter')
for i in range(4): gui.hotkey('ctrl', 'v')
time.sleep(0.2)
gui.hotkey('ctrl', 'enter') def reu(s):
print(s)
if s=='qq':
run()#运行QQ轰炸
elif s=='wei':
take()#运行微信轰炸 rook=tkinter.Tk()
rook.title('微信轰炸')#界面名称
rook.geometry('450x300')#界面大小
#<VirtualEvent event x=0 y=0>
comvalue = tkinter.StringVar() # 窗体自带的文本,新建一个值
comboxlist = ttk.Combobox(rook, width=12,textvariable=comvalue)# 初始化 comboxlist["values"] = ('qq','wei')#下拉框中的值
comboxlist.current(0) # 选择第一个
comboxlist.bind("<<ComboboxSelected>>", reu) # 绑定事件,(下拉列表框被选中时,绑定go()函数)
#绑定事件,(下拉列表框被选中时,绑定func()函数)
comboxlist.pack()
tkinter.Label(rook,text='请输入:',font=("黑体",10, "bold"),bg='Yellow').pack() # 绑定变量
e = tkinter.Variable()
entry2 = tkinter.Entry(rook, textvariable=e)#输入内容
entry2.pack() # e就代表输入框这个对象
# 设置值
b1=tkinter.Button(rook,text='运行',font=("黑体",11, "bold"),command=lambda : reu(entry2.get())).pack()
#输入的内容entry2.get())
rook.mainloop()

python简易版微信或QQ轰炸的更多相关文章

  1. Android学习之路——简易版微信为例(三)

    最近好久没有更新博文,一则是因为公司最近比较忙,另外自己在Android学习过程和简易版微信的开发过程中碰到了一些绊脚石,所以最近一直在学习充电中.下面来列举一下自己所走过的弯路: (1)本来打算前端 ...

  2. Android学习之路——简易版微信为例(二)

    1 概述 从这篇博文开始,正式进入简易版微信的开发.深入学习前,想谈谈个人对Android程序开发一些理解,不一定正确,只是自己的一点想法.Android程序开发不像我们在大学时候写C控制台程序那样, ...

  3. Android学习之路——简易版微信为例(一)

    这是“Android学习之路”系列文章的开篇,可能会让大家有些失望——这篇文章中我们不介绍简易版微信的实现(不过不是标题党哦,我会在后续博文中一步步实现这个应用程序的).这里主要是和广大园友们聊聊一个 ...

  4. Python 简易版选课系统

    一.创建学生类 # # 创建学生类 import random class Student: def __init__(self,num,name,address,course_lst=None): ...

  5. python简易版学生管理系统

    #coding=utf- def showInfo(): print("**************") print(" 学生管理系统") print(&quo ...

  6. Python写地铁的到站的原理简易版

    Python地铁的到站流程及原理(个人理解) 今天坐地铁看着站牌就莫名的想如果用Python写其工作原理 是不是很简单就小试牛刀了下大佬们勿喷纯属小弟个人理解 首先来看看地铁上显示的站牌如下: 就想这 ...

  7. Python模拟简易版淘宝客服机器人

    对于用Python制作一个简易版的淘宝客服机器人,大概思路是:首先从数据库中用sql语句获取相关数据信息并将其封装成函数,然后定义机器问答的主体函数,对于问题的识别可以利用正则表达式来进行分析,结合现 ...

  8. Python 开发个人微信号在运维开发中的使用

    一.主题:Python 开发个人微信号在运维开发中的使用 二.内容: 企业公众号 介绍开发微信公众号的后台逻辑,包括服务器验证逻辑.用户认证逻辑 个人微信号 面对企业微信的种种限制,可以使用 Itch ...

  9. Python如何实现微信群万人同步直播?

    很多人传言微信网页版(https://wx.qq.com/)接口已经被封了,所以所有的微信都不能登录网页版,这是错误的. 2019年7月微信对网页版微信进行了动态安全策略调整,导致一大批微信号不能登录 ...

随机推荐

  1. 一招解决GitHub致命的下载速度(GitHub下载速度慢怎么办)

    通过码云来导入github,通过码云下载 第一步: 找一个你需要下载的GitHub项目 第二步: 复制链接 第三步: 打开码云,然后选择从GitHub导入 第四步: 复制刚才的连接,起个名字,点击导入 ...

  2. Java实现 蓝桥杯VIP 算法训练 打印下述图形

    算法训练 4-1打印下述图形 时间限制:1.0s 内存限制:256.0MB 问题描述 使用循环结构打印下述图形,打印行数n由用户输入.打印空格时使用"%s"格式,向printf函数 ...

  3. Java实现欧拉筛与花里胡哨求质数高级大法的对比

    我也不清楚这是什么高级算法,欧拉筛是昨天有位大佬,半夜无意间告诉我的 欧拉筛: 主要的含义就是我把这个数的所有倍数都弄出来,然后下次循环的时候直接就可以跳过了 import java.text.Sim ...

  4. SQL Server使用Offset/Fetch Next实现分页

    T-SQL实现分页 ,查找指定范围内的数据 首先,正常的查询是这样的 使用分页后 select * from Products order by ProductID offset X rows fet ...

  5. Github 创建SSH密钥克隆仓库详解

    1.登录Github主页,点击任意一个repository,点击Clone or download,点击Use SSH 2.点击add a new pulbic key,创建公钥 3.下面图中的Tit ...

  6. 重学 Java 设计模式:实战桥接模式(多支付渠道「微信、支付宝」与多支付模式「刷脸、指纹」场景)

    作者:小傅哥 博客:https://bugstack.cn - 编写系列原创专题文章 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 为什么你的代码那么多ifelse 同类的业务.同样的功能, ...

  7. java创建透明背景的PNG图片加自定义文字水印

    人在码上走,需求天天有.这不,今天前端让我返回一个带自定义水印的背景图片.一通google,有现成的代码,但是基本是直接在源图上添加水印,生成出来的文字样式也没有控制好,看来又只有自己造轮子了. 过程 ...

  8. [leetcode] 股票问题

    参考文章: [1] 团灭 LeetCode 股票买卖问题 [2] Most consistent ways of dealing with the series of stock problems 其 ...

  9. Tomcat的8080端口被占用无法启动Tomcat怎么办?

    一招解决Tomcat的8080端口被占用 打开tomcat的bin目录在,找到startup.bat,用记事本编辑startup.bat,在第一行加入 set JAVA_HOME=C:\Program ...

  10. iOS-Reactive Cocoa的常见用法

    今天是周末,临近年底,工作上遇到不可抗力,会有点一些变动!这多少会让人有一点静不下来,但需克制,Reactive Cocoa是今天的主角! 废话不多说,今天聊聊Reactive Cocoa的常见使用! ...