新魔法指令初体验:微信群发助手
评论
收藏

新魔法指令初体验:微信群发助手

经验分享
袁佳伟
2025-03-16 11:52·浏览量:1710
袁佳伟
影刀专家
影刀认证工程师
发布于 2025-03-16 11:521710浏览

1、步骤:打开deepseek,输入一下描述:

一、我是要实现自动发送群聊信息的工具

二、保证发送频率不高

三、用phyon开发

四、可以新增群聊名称、删除群聊名称、待发送消息、发送按钮,取消发送、选择全部群聊、取消全部群聊、日志在一个页面5、微信打开、微信激活、打开微信搜索用ctrl+F 等都用键盘的快捷键的方式,保证工具使用的稳定性

2、deepseek,给出的结果如下:

要实现一个自动发送群聊信息的工具,并且满足你提到的所有需求,可以使用Python结合一些库来实现。以下是一个大致的实现思路和代码示例:

1. 环境准备

•Python 3.x

•pyautogui: 用于模拟键盘和鼠标操作。

•tkinter: 用于创建GUI界面。

•time: 用于控制发送频率。

你可以通过以下命令安装所需的库:pip install pyautogui

2. 功能设计

•新增群聊名称:在GUI中添加一个输入框和按钮,用户可以输入群聊名称并添加到列表中。

•删除群聊名称:在GUI中添加一个列表和一个删除按钮,用户可以选择群聊名称并删除。

•待发送消息:添加一个文本框,用户可以输入待发送的消息。

•发送按钮:点击后开始自动发送消息。

•取消发送:停止发送消息。

•选择全部群聊:选择所有群聊。

•取消全部群聊:取消选择所有群聊。

•日志:在GUI中显示操作日志。

•快捷键:使用pyautogui库来模拟键盘快捷键操作。

3. 代码实现

import tkinter as tk

from tkinter import messagebox, scrolledtext

import pyautogui

import time

import threading

class WeChatAutoSender:

   def __init__(self, root):

       self.root = root

       self.root.title("微信自动发送工具")

       self.group_list = []

       self.is_sending = False

       # 群聊名称输入框

       self.group_name_entry = tk.Entry(root, width=30)

       self.group_name_entry.grid(row=0, column=0, padx=10, pady=10)

       # 新增群聊按钮

       self.add_group_button = tk.Button(root, text="新增群聊", command=self.add_group)

       self.add_group_button.grid(row=0, column=1, padx=10, pady=10

       # 群聊列表

       self.group_listbox = tk.Listbox(root, width=50, height=10)

       self.group_listbox.grid(row=1, column=0, columnspan=2, padx=10, pady=10)

       # 删除群聊按钮

       self.delete_group_button = tk.Button(root, text="删除群聊", command=self.delete_group)

       self.delete_group_button.grid(row=2, column=0, padx=10, pady=10)

      # 选择全部群聊按钮

       self.select_all_button = tk.Button(root, text="选择全部群聊", command=self.select_all_groups)

       self.select_all_button.grid(row=2, column=1, padx=10, pady=10)

       # 取消全部群聊按钮

       self.deselect_all_button = tk.Button(root, text="取消全部群聊", command=self.deselect_all_groups)

       self.deselect_all_button.grid(row=3, column=0, padx=10, pady=10)

       # 待发送消息输入框

       self.message_entry = tk.Entry(root, width=50)

       self.message_entry.grid(row=4, column=0, columnspan=2, padx=10, pady=10)

       # 发送按钮

       self.send_button = tk.Button(root, text="发送", command=self.start_sending)

       self.send_button.grid(row=5, column=0, padx=10, pady=10)

       # 取消发送按钮

       self.cancel_button = tk.Button(root, text="取消发送", command=self.cancel_sending)

       self.cancel_button.grid(row=5, column=1, padx=10, pady=10)

       # 日志显示

       self.log_text = scrolledtext.ScrolledText(root, width=60, height=10)

       self.log_text.grid(row=6, column=0, columnspan=2, padx=10, pady=10)

   def add_group(self):

       group_name = self.group_name_entry.get()

       if group_name:

           self.group_list.append(group_name)

           self.group_listbox.insert(tk.END, group_name)

           self.group_name_entry.delete(0, tk.END)

           self.log(f"已添加群聊: {group_name}")

   def delete_group(self):

       selected = self.group_listbox.curselection()

       if selected:

           group_name = self.group_listbox.get(selected)

           self.group_list.remove(group_name)

           self.group_listbox.delete(selected)

           self.log(f"已删除群聊: {group_name}")

   def select_all_groups(self):

       self.group_listbox.selection_set(0, tk.END)

       self.log("已选择全部群聊")

   def deselect_all_groups(self):

       self.group_listbox.selection_clear(0, tk.END)

       self.log("已取消选择全部群聊")

  def start_sending(self):

       if not self.is_sending:

           self.is_sending = True

           self.log("开始发送消息...")

           threading.Thread(target=self.send_messages).start()

   def cancel_sending(self):

       self.is_sending = False

       self.log("已取消发送")

   def send_messages(self):

       selected_groups = self.group_listbox.curselection()

       message = self.message_entry.get()

       if not selected_groups:

           self.log("请选择至少一个群聊")

           return

       if not message:

           self.log("请输入待发送的消息")

           return

       for index in selected_groups:

           group_name = self.group_listbox.get(index)

           self.log(f"正在发送消息到群聊: {group_name}")

           self.send_message_to_group(group_name, message)

           if not self.is_sending:

               break

           time.sleep(5)  # 控制发送频率

       self.is_sending = False

       self.log("消息发送完成")

  def send_message_to_group(self, group_name, message):

       # 打开微信搜索框 (Ctrl + F)

       pyautogui.hotkey('ctrl', 'f')

       time.sleep(1)

       # 输入群聊名称

       pyautogui.write(group_name)

       time.sleep(1)

       # 按下回车键进入群聊

       pyautogui.press('enter')

       time.sleep(1)

       # 输入消息

       pyautogui.write(message)

       time.sleep(1)

       # 按下回车键发送消息

       pyautogui.press('enter')

       time.sleep(1)

   def log(self, message):

       self.log_text.insert(tk.END, message + "\n")

       self.log_text.see(tk.END)

if __name__ == "__main__":

   root = tk.Tk()

   app = WeChatAutoSender(root)

   root.mainloop()

4. 使用说明

1.新增群聊:在输入框中输入群聊名称,点击“新增群聊”按钮。

2.删除群聊:在列表中选择群聊名称,点击“删除群聊”按钮。

3.选择全部群聊:点击“选择全部群聊”按钮。

4.取消全部群聊:点击“取消全部群聊”按钮。

5.输入消息:在“待发送消息”输入框中输入要发送的消息。

6.发送消息:点击“发送”按钮,工具会自动在选中的群聊中发送消息。

7.取消发送:点击“取消发送”按钮,停止发送消息。

8.日志:在日志框中查看操作记录。

5. 注意事项

•发送频率:代码中设置了time.sleep(5)来控制发送频率,你可以根据需要调整。

•微信窗口:确保微信窗口是打开的,并且处于活动状态。

•快捷键:代码中使用了Ctrl + F来打开微信搜索框,确保你的微信版本支持该快捷键。

6. 稳定性

•异常处理:可以在代码中添加异常处理机制,确保在出现错误时不会崩溃。

•日志记录:通过日志记录所有操作,方便排查问题。

三、打开影刀RPA

四、新建PC自动化应用

五、拖拽魔法指令

六、将代码实现,粘贴到对话窗口

七:避雷

1、由于魔法指令会默认你要的是指令”输入”、输出的方式;对于想要实现界面可视化并不友好,你可以给它如下描述

描述:我要gui界面

2、将第六条的代码给到魔法指令,它还会误认为你要开发网页应用,不必理会它,在给它发送一次即可

3、将第六条的代码给到魔法指令,它虽然生成了gui界面的工具,但是它缺少,保存群聊名称的功能,避雷开始:千万不要直接描述让它增加保存群聊名称的功能:例如我的描述:“请增加保存群聊名称的功能",它会把你搜索群聊名称等代码区域的逻辑都给你改了,正确做法:复制不让它改动的代码“********”加一句“上述代码不要进行更改,群聊列表,需要能够保存和删除群聊名称,每次打开的时候,群聊列表自动加载出已经保存的群聊名称”

4、将第六条的代码给到魔法指令,它虽然生成了gui界面的工具,但是它执行搜索群聊名称和发送消息内容逻辑有问题,它把要发送的消息内容当做群聊名称去搜索,这样它就导致没有正确搜索群聊名称,要发送的消息也是“空”;正确让它修改的描述可借用:魔法指令的“优化提问”功能:并未在搜索框里面输入群聊名称,请检查一下是不是执行逻辑有问题

5、切记:魔法指令并不是完全智能,例如:你描述直接让它生成“自动群发的微信工具”它会用定位的方式去找通讯录、搜索框、对话输入框等,这个坑,我用了7个小时才摸索出来,当然也有我描述的逻辑问题它有可能理解不到;建议用AI把你要避免的坑让AI给你找出来,让它给你写提示词;

最后:影刀最新版本的魔法指令:更智能,真正可以做到完全不用任何指令、不用手动修改它生成的代码、更让人惊喜的是它直接可以调用PyAutoGUl库,来生成可视化界面;待我体验它"网页自动化"、“数据处理”的新功能;魔法指令虽然不是初体验,但是新版本的魔法指令真的很赞;欢迎各位交流,一起加油!

大家喜欢我的文章给我点个赞吧!!!


收藏7
全部评论1
最新
发布评论
评论