搭建微信机器人的第5种方式

picture.image

猴哥的第 172 期分享,欢迎追看

作为一个超级应用,集社交、通讯、支付于一身的微信,试问你可还离的开?

5月14日,腾讯发布 2025 年第一季度财报,微信月活突破了14亿,太恐怖了。

微信生态,已延伸到生活的方方面面,如何将当前火热的 AI 工具,嵌入到微信?

之前,陆续和大家分享了微信AI机器人的几种实现:

手把手搭建微信机器人,帮你雇一个24小时在线的个人 AI 助理

手把手打造基于Hook机制的微信机器人,无需云服务器

搭建微信AI助理的第4种方式,我造了一个摸鱼小助手

借 WeChatFerry 东风,我把微信机器人复活了

列出来,是告诉你,以上框架别用了,封你没商量!

前段时间,微信封号风暴再度来袭,群里哀嚎遍野,微信开启斩首行动,凡采用上述框架,均喜提:“涉嫌违规,功能受限。”

其实,不管采用是什么协议,上述框架多基于 hook 机制。

距离上次封号有段时间了,之所以没发文章,是因为笔者还没找到对策。

今日分享,给大家推荐一款新框架-wxauto,并复活小爱微信机器人。

  1. wxauto 简介

项目地址:https://github.com/cluic/wxauto

简言之:wxauto 基于 UIAutomation 技术开发,通过模拟人工点击PC微信实现的微信消息推送机器人,具有安全稳定、零封号风险的特点。

UIAutomation 又是啥?

微软推出的自动化测试框架,用于以编程方式访问和操作 Windows 平台下的用户界面(UI)元素。

大白话 :用程序来代替人肉操作。

所以,要用 AI 来接管消息处理,你只需:

  1. 熟悉 wxauto 框架;
  2. 实现自定义接口,完成消息处理。

不过,正式开发之前,还需做好如下准备工作。

  1. 准备工作

wxauto 基于 Windows 端微信进行实现。

2.1 Windows PC

如果只想体验一下,随便玩玩,笔记本和台式机就行,只要装上 Windows 就成!

也许你会关心:

Q: 对配置有什么要求?

A:没啥要求,能带的动系统就行。

Q:PC 需要装什么系统?

A:win11,其他系统没测过。win10 官方都不再维护了,建议直接装 win11,安装也非常简单,不了解的小伙伴可看教程:简单3步,搞定 Windows11 系统安装/重装

2.2 Windows Server

如果要用于生产环境,需要长期稳定运行,最好准备一台 Windows 服务器。

有哪些方式呢?

方式一:云厂商购买 :以某云为例(仅供参考,按需购买)

https://www.aliyun.com/minisite/goods?userCode=ggqtukm3

picture.image

https://curl.qcloud.com/BLm2fgkN

picture.image

方式二:搭建虚拟机

当然,如果你有一台高性能 Linux 服务器,也可以选择在 Linux 上构建一台 Windows 虚拟机。

推荐采用下方 docker 方式部署 Windows 虚拟机,篇幅有限,有机会单独出一篇教程。

https://github.com/dockur/windows

2.3 安装微信

PC 端微信版本 3.9 系列即可,下方地址提供有不同版本的微信安装包:

https://github.com/tom-snow/wechat-windows-versions/releases/

双击完成安装后,记得前往设置,关闭自动更新,否则后台会自动更新为新版本!

picture.image

  1. 熟悉 wxauto

项目文档:https://docs.wxauto.org/

wxauto 基于 UIAutomation 对操作微信进行了封装,为此只需了解 接收消息发送消息 即可上手开发。

3.1 安装和使用

安装:

  
pip install wxauto  

初始化微信对象,获取当前会话窗口。

  
from wxauto import WeChat  
wx = WeChat()  

注:运行下述示例前,确保 PC 端微信已成功登录。

3.2 接收消息

wxauto 框架下,接收消息有两种方式:

  • 当前列表中所有新消息:
  
chatItems = self.wx.GetNextNewMessage()  
for chatWinName, msgs in chatItems.items():  
    self.wx.ChatWith(who=chatWinName)  
    for msg in msgs:  
      print(msg)  

  • 监听对话窗口中的新消息:
  
for item in self.listenList:  
    self.wx.AddListenChat(who=item)  
for chatName, chatWin in self.chatDict.items():  
    msgs = chatWin.GetNewMessage()  
    for msg in msgs:  
        print(msg)  

3.3 发送消息

在当前窗口中发送消息:

  • 文本消息:
  
# 附带@群好友的消息  
chatWin.SendMsg(msg=text, at=wx\_name)  

  • 文件:
  
chatWin.SendFiles(image\_path)  

3.4 示例框架

之前基于 wcf 搭建的框架:https://github.com/hougeai/wcf-wechatbot

只要把其中收发消息的接口,替换成 wxauto 的接口就 OK 了。

更多定制化接口,还需要进一步适配,等有空再更新。不过,完成简单的群管理已经足够了。

3.5 保持窗口常开

因为是模拟点击操作,所以要确保屏幕不关。

Windows 远程登录后,默认进入锁屏状态。

所以,你需要编写如下 .bat 脚本:

  
for /f "skip=1 tokens=3" %%s in ('query user %USERNAME%') do (  
    echo Session ID: %%s  
    %windir%\System32\tscon.exe %%s /dest:console  
)  

然后,右键以管理员身份运行,将该用户的远程会话切换到控制台会话。

写在最后

本文分享了一款稳定可靠的微信机器人开发框架:wxauto,了解其基本原理并快速上手。

如果对你有帮助,欢迎点赞收藏 备用。

友情提醒:微信风控日益严格,且行且珍惜,切不可:以便利之名,干违法之实。


为方便大家交流,新建了一个 AI 交流群,公众号后台「联系我」,拉你进群。

👇 关注猴哥,快速入门AI工具

picture.image

# AI 工具:

本地部署大模型?看这篇就够了,Ollama 部署和实战

盘点9家免费且靠谱的AI大模型 API,统一封装,任性调用!

免费GPU算力本地跑DeepSeek R1,无惧官方服务繁忙!

# AI应用** :**

弃坑 Coze,我把 Dify 接入了个人微信,AI小助理太强了

我把「FLUX」接入了「小爱」,微信直接出图,告别一切绘画软件!

202K 下载!最强开源OCR:本地部署,邀你围观体验

阿里开源TTS CosyVoice 再升级!语音克隆玩出新花样,支持流式输出

借 WeChatFerry 东风,我把微信机器人复活了!

成本不到50的AI对话机器人,如何自建服务端?自定义角色+语音克隆

0
0
0
0
评论
未登录
暂无评论