wxauto 微信自动化实战:3个场景让新手半小时做出自己的微信机器人
wxauto 微信自动化实战3个场景让新手半小时做出自己的微信机器人【免费下载链接】wxautoWindows版本微信客户端非网页版自动化可实现简单的发送、接收微信消息简单微信机器人项目地址: https://gitcode.com/gh_mirrors/wx/wxauto很多人第一次听说 wxauto 这个 Windows 微信自动化库时第一反应是又是个要逆向协议的玩意。但 wxauto 完全不同——它基于 UIAutomation 技术驱动微信 PC 客户端非网页版像真人一样看界面、点按钮、敲键盘不需要网页版、不需要抓包、更不需要碰任何敏感接口。这篇 wxauto 微信自动化入门实战会用三个真实生活场景带你一步步完成从发送消息到自动应答机器人的全部搭建过程。新手提示本文所有代码均已实测可用复制即跑。项目源码克隆地址git clone https://gitcode.com/gh_mirrors/wx/wxauto安装只需pip install .。先看它能帮你做什么动手之前先给 wxauto 画个像——它本质上是一个会操作微信界面的机器人手。你平时手动做的事它都能做能力典型用法难度发消息文本、文件、成员、引用回复⭐收消息拉取聊天记录、监听新消息、自动下载图片文件语音⭐⭐管好友自动通过好友申请、加好友、批量整理备注标签⭐⭐管群聊拉人建群、获取群成员、所有人⭐⭐做机器人监听回调函数实现自动回复⭐⭐⭐一句话总结价值凡是你能在微信窗口里手动完成的操作都能用几十行 Python 变成自动化流程。场景一每天上班先花 5 分钟给同事发通知让它来每天早晨到工位先给项目群发通知、再给张三发文件、还要给李四留言……这些重复劳动恰恰是 wxauto 最擅长的说话场景。第一步连上你的微信wxauto 的要求很朴素——微信必须先登录它不做登录拦截只做界面驱动。环境要求Windows 10/11 及以上、微信 3.9.X 版本、Python 3.9。from wxauto import WeChat # 初始化会自动连接已打开的微信主窗口 wx WeChat() # 看到下面这行输出说明连接成功 # 初始化成功获取到已登录窗口你的微信昵称第二步发文本、发文件、带 群发SendMsg是使用频率最高的方法参数就两个内容 发给谁。# 给张三发一条文本 wx.SendMsg(早上好今天 10 点开会记得带上方案, who张三) # 给项目群发文件支持传一个路径也支持传路径列表 wx.SendFiles(rD:\工作\周报.xlsx, who项目群) # 群消息指定人msg里的 {昵称} 会被自动替换成真正的 wx.SendMsg(各位好\n{张三} 请负责前端部分\n{李四} 请负责后端部分, who项目群) # 直接所有人一键群发 wx.AtAll(msg今晚 8 点上线发版请做好准备, who项目群)跑完这段你的通知任务就干完了。整套逻辑底层靠的是剪贴板 模拟按键所以发送内容支持任意文本包括换行和特殊符号。第三步读消息确认对方真的收到了光发不收等于单机。GetAllMessage能拉取当前聊天窗口已加载的记录每条消息都是一个对象自带content内容和type类型两个基本属性wx.ChatWith(张三) # 先切到张三的窗口 msgs wx.GetAllMessage() # 拉取窗口内消息 for msg in msgs: print(f类型: {msg.type} | 内容: {msg.content})如果窗口消息太多用LoadMoreMessage()向上滚动加载历史记录再配合ParseWeChatTime之类的时间解析就能拼出一份完整的会话流水。场景二好友申请堆成山写个 10 行的审批机器人做过社群运营的朋友都懂活动一结束好友申请瞬间几百条一条条手动点通过再打备注手都要废了。wxauto 提供了现成的好友申请处理流水线三步走完。from wxauto import WeChat wx WeChat() # 第一步拉出所有待处理的好友申请acceptableTrue 只保留可接受的 newfriends wx.GetNewFriends(acceptableTrue) # 第二步逐个通过顺便把备注和标签一起搞定 tags [活动粉丝, 技术交流] for friend in newfriends: remark f活动_{friend.name} friend.Accept(remarkremark, tagstags) # 通过申请自动备注打标签 print(f已通过{friend.name}) print(f本次共处理 {len(newfriends)} 条申请)反向场景同样支持如果你需要主动添加别人用AddNewFriend传入微信号/手机号即可还能带申请语和备注。补充一句GetAllFriends可以把整份好友列表昵称、备注、标签导出成结构化数据做好友画像分析特别好用。官方文档在 docs/class/WeChat.md 里有完整方法清单。场景三从收发工具到微信机器人的临门一脚前两个场景是一次性的自动化而机器人需要持续监听——微信来消息了你的程序要立刻感知并做出反应。wxauto 的监听机制是一个守护线程 回调函数逻辑非常清爽。监听与回调from wxauto import WeChat from wxauto.msgs import FriendMessage import time wx WeChat() # 消息处理函数每来一条新消息回调一次 def on_message(msg, chat): # 打印收到的新消息 print(f[{chat}] {msg.sender}: {msg.content}) # 例1自动下载好友发来的图片 if msg.type image: path msg.download() # 返回图片保存路径 print(图片已保存到:, path) # 例2语音自动转文字 if msg.type voice: print(语音内容:, msg.to_text()) # 例3好友消息自动回复收到 if isinstance(msg, FriendMessage): msg.quote(收到稍后回复你) # 引用对方消息回复 # 注册监听对象开始监听张三 wx.AddListenChat(nickname张三, callbackon_message) # 保持程序运行监听是守护线程不加这行主线程会直接退出 wx.KeepRunning()这里重点解释两个新手必懵的点msg是什么它是消息对象根据来源分为SelfMessage自己发的、FriendMessage好友发的、SysMessage系统消息等根据内容又有TextMessage、ImageMessage、VoiceMessage等细分。所有类型都带content和type两个属性。为什么要KeepRunningwxauto 的监听跑在守护线程里主线程一旦执行完就退出了守护线程会被强制终止所以必须用这行挂住主线程。消息类型体系详见 docs/class/Message.md。把自动回复升级成有脑子的机器人回调函数是普通 Python 函数这意味着你想接什么就接什么——关键词匹配、HTTP 请求、甚至大模型接口全部塞进去即可import requests def smart_reply(msg, chat): if msg.type ! text: # 只处理文本消息 return if msg.sender 小助手: # 跳过自己避免死循环 return # 关键词规则简单粗暴但好用 if 价格 in msg.content: msg.reply(价格表我发你请查收) elif 人工 in msg.content: msg.reply(已通知客服稍后联系您) else: # 其余消息转发到内部对接群人工兜底 wx.SendMsg(f[转人工] {msg.sender}: {msg.content}, who客服对接群)到这一步一个关键词应答 人工兜底的微信机器人就真正落地了。官方文档 docs/example.md 里还给了消息记录落盘、图片视频自动下载等更多 callback 玩法值得通读一遍。新手最容易踩的 5 个坑自动化工具跑不起来九成是环境问题这里把高频坑一次性说清坑现象解决办法微信版本不对初始化报错或找不到控件必须用 3.9.X 版本新旧版控件结构不同微信没登录/没打开主窗口报窗口句柄找不到先手动登录微信保持主窗口打开再跑脚本好友名匹配不上明明有这个好友却发不出去优先用备注名ChatWith建议用完整名称监听主线程退出加了监听但程序秒退别忘wx.KeepRunning()好友太多卡顿GetFriendDetails跑很久先传n10小规模试跑再放开数量另外两个使用习惯也提醒下代码运行期间尽量别手动动鼠标去抢微信窗口毕竟它是在替你的手操作界面多开微信时WeChat()会连接主窗口文档中提供了get_wx_clients一类方法可以遍历所有客户端实例按需取用。现在就可以开始wxauto 这个 Windows 微信自动化库的价值不在于它有多炫酷而在于它把操作微信这件事压缩成了一行wx.SendMsg()。从发消息、收消息、管好友到监听回调做机器人本文三个场景已经覆盖了 80% 的日常需求。教程写得再多不如亲手跑一条消息。现在就去登录你的微信执行第一行from wxauto import WeChat半小时后你就会拥有自己的微信机器人。温馨提示wxauto 仅用于 UIAutomation 技术的交流学习请勿用于生产环境与商业用途也不要用于任何非法活动。合规使用技术才有价值。【免费下载链接】wxautoWindows版本微信客户端非网页版自动化可实现简单的发送、接收微信消息简单微信机器人项目地址: https://gitcode.com/gh_mirrors/wx/wxauto创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

MHY_Scanner 扫码登录工具上手体验:屏幕监控与直播流抢码一次说清

MHY_Scanner 扫码登录工具上手体验:屏幕监控与直播流抢码一次说清

MHY_Scanner 扫码登录工具上手体验:屏幕监控与直播流抢码一次说清 【免费下载链接】MHY_Scanner MHY扫码登录器,支持从直播流抢码。 项目地址: https://gitcode.com/gh_mirrors/mh/MHY_Scanner 如果你玩崩坏3、原神、星穹铁道或绝区零&#xff0c…

2026/10/3 7:16:26 阅读更多 →
关系型数据库概述

关系型数据库概述

关系型数据库概述 关系型数据库(Relational Database)是基于关系模型的数据管理系统,使用表格(表)存储数据,表之间通过键(Key)建立关联。其核心特征包括结构化查询语言(SQL)、ACID事务特性(原子性、一致性、隔离性、持久性)和数据完整性约束。 核心组件 表(Tabl…

2026/9/28 14:02:47 阅读更多 →
AI情感分析技术解析:从NLP原理到产品伦理的深度思考

AI情感分析技术解析:从NLP原理到产品伦理的深度思考

1. 从“AI判官”到情感计算:一个产品经理的深度复盘最近,我身边好几个朋友都在聊一个叫“AI恋爱判官”的小玩意儿。简单说,就是你上传一段你和对象的聊天记录,或者描述一个情感场景,这个AI会给你一个“判决”&#xff…

2026/10/14 5:16:02 阅读更多 →

最新新闻

C#调用WebService获取PDF转图片:选型与踩坑实战

C#调用WebService获取PDF转图片:选型与踩坑实战

做C#开发这几年,遇到“调用WebService获取PDF文件再转换为图片”这种需求不算少。可能是一个审批系统需要预览合同,也可能是一个报表平台需要把服务端生成的文件转成缩略图展示。总之核心工作就两件事:把远程文件拿下来,再在本地转…

2026/10/14 6:40:29 阅读更多 →
Unity Spark实战:在浏览器中用AI自然语言快速做游戏原型

Unity Spark实战:在浏览器中用AI自然语言快速做游戏原型

看到“Unity Spark 正式发布”这条消息的时候,我第一反应是:又来了。这年头但凡和 AI 沾边的工具都在喊“原生支持 AI”,口号早就被用烂了。但等我真正在浏览器里打开这个基于 AI 的游戏开发环境,亲手生成一个场景、跑通一次跳跃、…

2026/10/14 6:40:29 阅读更多 →
仓颉语言属性(prop)完全指南:getter/setter 定义、抽象属性与继承覆盖实战

仓颉语言属性(prop)完全指南:getter/setter 定义、抽象属性与继承覆盖实战

文档编程语言 【免费下载链接】cangjie_docs 仓颉编程语言开发者文档。 项目地址: https://gitcode.com/Cangjie/cangjie_docs 点击查看 免费下载 属性(Properties)是仓颉语言中用于间接获取和设置值的语言机制:它通过一个 gette…

2026/10/14 6:40:29 阅读更多 →
从Node到Bun:JavaScript运行时与工具链的工程效率革命

从Node到Bun:JavaScript运行时与工具链的工程效率革命

1. 为什么我把重心从 Node 切到了 Bun先说结论:Bun 不是又一个跑得更快的 Node,它是一整套重新设计过的 JavaScript 运行时和工具链。我最初对它的态度是观望,因为这类"下一代运行时"的宣发见过太多次了,但真正在几个中…

2026/10/14 6:40:29 阅读更多 →
C#对接WebService拉取PDF并转图片:从接口调到部署避坑

C#对接WebService拉取PDF并转图片:从接口调到部署避坑

前一阵接手一个对接任务,对方是个运行了十多年的老系统,只对外暴露SOAP风格的WebService接口。业务要求很直接:通过这个接口把PDF文件拉到我们这边,再转成图片,放到Web端做在线预览和打印存档。这类需求在C#开发里非常…

2026/10/14 6:40:29 阅读更多 →
纯Python实现猜数字游戏:从零到避坑的完整指南

纯Python实现猜数字游戏:从零到避坑的完整指南

猜数字游戏大概是很多人的第一个编程项目。它不像计算器那样枯燥,也不需要复杂的界面,但一套完整流程走下来,变量、输入输出、条件判断、循环、异常处理这些编程入门核心概念全部能练到。我最近又把这个小项目从头写了一遍,用最基…

2026/10/14 6:39:29 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →