python简易版微信或QQ轰炸
在讲解代码之前我们先来回忆一下,平时我们发送消息时,先打开微信或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轰炸的更多相关文章
- Android学习之路——简易版微信为例(三)
最近好久没有更新博文,一则是因为公司最近比较忙,另外自己在Android学习过程和简易版微信的开发过程中碰到了一些绊脚石,所以最近一直在学习充电中.下面来列举一下自己所走过的弯路: (1)本来打算前端 ...
- Android学习之路——简易版微信为例(二)
1 概述 从这篇博文开始,正式进入简易版微信的开发.深入学习前,想谈谈个人对Android程序开发一些理解,不一定正确,只是自己的一点想法.Android程序开发不像我们在大学时候写C控制台程序那样, ...
- Android学习之路——简易版微信为例(一)
这是“Android学习之路”系列文章的开篇,可能会让大家有些失望——这篇文章中我们不介绍简易版微信的实现(不过不是标题党哦,我会在后续博文中一步步实现这个应用程序的).这里主要是和广大园友们聊聊一个 ...
- Python 简易版选课系统
一.创建学生类 # # 创建学生类 import random class Student: def __init__(self,num,name,address,course_lst=None): ...
- python简易版学生管理系统
#coding=utf- def showInfo(): print("**************") print(" 学生管理系统") print(&quo ...
- Python写地铁的到站的原理简易版
Python地铁的到站流程及原理(个人理解) 今天坐地铁看着站牌就莫名的想如果用Python写其工作原理 是不是很简单就小试牛刀了下大佬们勿喷纯属小弟个人理解 首先来看看地铁上显示的站牌如下: 就想这 ...
- Python模拟简易版淘宝客服机器人
对于用Python制作一个简易版的淘宝客服机器人,大概思路是:首先从数据库中用sql语句获取相关数据信息并将其封装成函数,然后定义机器问答的主体函数,对于问题的识别可以利用正则表达式来进行分析,结合现 ...
- Python 开发个人微信号在运维开发中的使用
一.主题:Python 开发个人微信号在运维开发中的使用 二.内容: 企业公众号 介绍开发微信公众号的后台逻辑,包括服务器验证逻辑.用户认证逻辑 个人微信号 面对企业微信的种种限制,可以使用 Itch ...
- Python如何实现微信群万人同步直播?
很多人传言微信网页版(https://wx.qq.com/)接口已经被封了,所以所有的微信都不能登录网页版,这是错误的. 2019年7月微信对网页版微信进行了动态安全策略调整,导致一大批微信号不能登录 ...
随机推荐
- Java实现 蓝桥杯VIP 算法训练 JAM计数法
题目描述 Jam是个喜欢标新立异的科学怪人.他不使用阿拉伯数字计数,而是使用小 写英文字母计数,他觉得这样做,会使世界更加丰富多彩.在他的计数法中,每个数字的位数都是相同的(使用相同个数的字母),英文 ...
- Java实现 蓝桥杯 基础练习 闰年判断
基础练习 闰年判断 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 问题描述 给定一个年份,判断这一年是不是闰年. 当以下情况之一满足时,这一年是闰年: 年份是4的倍数而不是1 ...
- Java实现 蓝桥杯VIP 基础练习 Huffuman树
基础练习 Huffuman树 问题描述 Huffman树在编码中有着广泛的应用.在这里,我们只关心Huffman树的构造过程. 给出一列数{pi}={p0, p1, -, pn-1},用这列数构造Hu ...
- Java实现 蓝桥杯VIP 算法提高 陶陶摘苹果2
算法提高 陶陶摘苹果2 时间限制:1.0s 内存限制:256.0MB 问题描述 陶陶家的院子里有一棵苹果树,每到秋天树上就会结出n个苹果.苹果成熟的时候,陶陶就会跑去摘苹果.陶陶有个30厘米高的板凳, ...
- Java实现 LeetCode 102 二叉树的层次遍历
102. 二叉树的层次遍历 给定一个二叉树,返回其按层次遍历的节点值. (即逐层地,从左到右访问所有节点). 例如: 给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 2 ...
- Docker安装及阿里云镜像加速器配置
Docker安装 Windows系统安装就不用说了,因为Docker是开源的,所以,直接去官网:https://www.docker.com/下载安装包安装就行了 其实,Linux系统安装也很简单,照 ...
- Linux 用户组管理命令
groupadd 组名,可以添加用户组 groupmod -n 新组名 老组名,可以修改组名 groupdel 组名,可以删除组(组中不能有初始用户存在,附加用户无所谓) gpasswd -a 用户名 ...
- 震惊!当Python遇到Excel后,将开启你的认知虫洞
本文主要内容: 1. Excel,你为什么如此强大 2. 软件开发也需要团队作战 3. Excel的集成方案演化 4. macOS特有的集成方案:applescript 5. Python与Exc ...
- 原生js ajax 封装
首先我们先了解ajax的get和post请求分别是怎样请求数据的 get请求 let ajx = new XMLHttpRequest() //创建ajax实例 /*打开需要请求的地址,可以有三个参数 ...
- Android getMeasuredHeight()与getHeight()的区别
getMeasuredHeight()返回的是原始测量高度,与屏幕无关 getHeight()返回的是在屏幕上显示的高度 实际上在当屏幕可以包裹内容的时候,他们的值是相等的,只有当view超出屏幕后, ...