Python实现多平台“消息轰炸”

你消息对战还在用手点吗?😀

Python以其丰富的标准库和第三方库而闻名,它易于学习和使用。该程序使用户能够通过一个简洁的图形用户界面(GUI)输入消息和发送次数,并在预定时间自动发送。

库介绍:

pynput 是一个 Python 库,用于控制和监控用户输入设备(例如键盘和鼠标)。它提供了一组简单且强大的 API,能够实时捕获和模拟用户的键盘与鼠标动作。

tkinter 用于创建图形用户界面(GUI),例如菜单栏、对话框、画布等。

1,下载对应的包并导入对应的模块

###VPN导致pip包下载失败,可参考这篇文章

解决VPN导致包下载失败icon-default.png?t=N7T8https://mp.csdn.net/mp_blog/creation/editor/141592355

import pynput
import time
from pynput.keyboard import Key, Controller as kel_cl
from pynput.mouse import Button as MouseButton, Controller as mouse_cl  # 给 Button 设置别名
from tkinter import Tk, Label, Entry, Button, StringVar

2,定义一个键盘函数,使用`pynput`的`Controller`类,模拟键盘的输入。

def keyboard_input(string):#string代表要输入的字符串
    keyboard = kel_cl()
    keyboard.type(string)

3,定义一个鼠标函数,同样使用`Controller`类,模拟鼠标点击步骤。

鼠标点击分为按下和弹起两个步骤

 mouse_cl()表示鼠标的控制权

def mouse_click():
    mouse = mouse_cl()
    mouse.press(MouseButton.left)  # 使用别名 MouseButton# 表示鼠标的左键
    mouse.release(MouseButton.left)

4,定义消息发送函数

   回车键的按下与弹起

time.sleep 用于控制程序执行的时间间隔

def send_message(number, string):#发送的次数和发送的字符串
    time.sleep(5)
    for i in range(number):#在不断的迭代中进行每次发送的模拟
        keyboard_input(string)
        mouse_click()
        time.sleep(0.5)
        keyboard = kel_cl()
        keyboard.press(Key.enter)
        keyboard.release(Key.enter)

5,调用(控制台输入消息)

注意:在运行程序之前,需要先打开一个聊天窗口,无论是微信、QQ还是其他任何聊天工具,只要它有聊天框即可。运行后,立即点击已打开的聊天窗口,等待程序执行,以实现跨平台使用。

if __name__ == '__main__':
  send_message(100,"hello")

6,如果想要更好一点,可以通过tkinter实现一个弹框版本的,效果如下(拓展步骤):

7cd6b94d3a52442d84d3fcb16ab41763.png

部分代码参考:弹框的制作

# 创建标签和输入框,以及设置它们各自的大小
    Label(root, text="请输入要发送的消息:").grid(row=0, column=0, padx=10, pady=10)
    Entry(root, textvariable=message_var, width=30).grid(row=0, column=1, padx=10, pady=10)

    Label(root, text="请输入要发送的次数:").grid(row=1, column=0, padx=10, pady=10)
    Entry(root, textvariable=times_var, width=30).grid(row=1, column=1, padx=10, pady=10)

    # 创建提交按钮
    Button(root, text="提交", command=lambda: on_submit(message_var, times_var, root)).grid(row=2, columnspan=2, pady=10)

    # 运行这个图形化窗口
    root.mainloop()

 打开环境太麻烦?那就利用pyinstaller打包这个程序,想发给别人也是ok的,这里就不赘述了。

高效自制js讯网网课刷课脚本icon-default.png?t=N7T8https://mp.csdn.net/mp_blog/creation/editor/141573603

  • 13
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值