告别反复复制粘贴:wechat-forwarding 让微信群消息自动转发一键跑通
告别反复复制粘贴:wechat-forwarding 让微信群消息自动转发一键跑通
【免费下载链接】wechat-forwarding在微信群之间转发消息项目地址: https://gitcode.com/gh_mirrors/we/wechat-forwarding
晚上十一点,运营小林对着手机屏幕叹了口气:活动公告改了第三版,她刚从一群翻到二群、二群翻到三群,把新文案挨个粘贴进去,回头一看,三群贴的居然还是旧链接。三个群来回切、复制、粘贴、核对,十几分钟过去,人已经麻了。
如果有个工具能在微信群里自动把消息同步到指定群组,她这十几分钟本可以省下来。这就是我们今天要聊的wechat-forwarding——一个基于 Python 的微信群消息自动转发工具。它做的事情很纯粹:某个群进来一条消息,按你定好的规则,自动转给其他群。
手动转发和自动转发,差的不是一点半点
先别急着看代码,我们把两件事摆在一起感受一下:
| 手动转发 | 用 wechat-forwarding |
|---|---|
| 在多个群之间来回切换、复制粘贴 | 消息进群,自动同步到目标群 |
| 容易漏发、错发旧版本 | 按配置好的规则统一转发,一条不落 |
| 深夜加班,翻聊天记录翻到眼花 | 扫码登录一次,剩下的交给程序 |
| 转完不知道消息到底是谁发的 | 自动带上发送者昵称和转发前缀 |
| 图片、文件要先另存再手动传 | 图片、视频、文件自动下载并转发 |
最关键的是那条前缀:转发出去的消息会自动带一个标记,比如[转发][小林]: 活动公告……。群里的朋友一眼就能看出“这是转发的、原作者是谁”,不用你反复解释“这个不是我写的”。
花十分钟,跑通你的第一条自动转发消息
光说没用,我们直接做一个真实任务:把一条活动公告同步到三个群。跟着下面这几步走,基本就能跑通。
第一步,先把示例配置变成自己的配置文件
程序启动时读的是config.json,仓库里只给了模板config_sample.json。所以第一件事是复制一份:
cp config_sample.json config.json这段命令的作用是:把模板文件复制成程序真正会读取的配置文件,之后所有改动都在这份config.json里做,模板留着备用。
第二步,把配置里的占位符换成真实群名
打开config.json,核心就藏在forward.config里。它是一组“群与群”的对应关系,有点像给群聊设置中转站:A 群收到消息,自动送去 B 群和 C 群。看这个结构:
{ "forward": { "config": { "产品一群": {"prefix": "[转发]", "sub": ["产品二群", "产品三群"]}, "产品二群": {"prefix": "[转发]", "sub": ["产品一群", "产品三群"]} }, "data_path": "data", "max_file_size": 500000 } }每一项什么意思?
| 配置项 | 作用 | 提醒 |
|---|---|---|
"产品一群" | 收到消息的“源群” | 必须和微信里显示的群名一字不差 |
"prefix" | 转发前自动加的前缀 | 用来标注“这是转发的” |
"sub" | 消息要同步到哪些群 | 目标群名同样要精确 |
max_file_size | 允许转发的文件大小上限 | 单位是字节,500000 约等于 500KB |
群名这个坑我多说一句:程序是按群名精确匹配的,多一个空格、少一个字都可能转不出去。配置前最好先去微信里把群名原样复制过来。
第三步,装好三个依赖再启动
项目本身只有一个主程序文件,依赖也很少,三条命令就能装齐:
pip install itchat pip install requests pip install timeout-decoratoritchat负责和微信通信,requests用来发请求,timeout-decorator给文件下载加了超时保护。装完后确认你的 Python 在 3.6 以上就行。
第四步,扫码登录,发一条测试消息
启动程序:
python wechat-forwarding.py终端里会弹出一个二维码,用手机微信扫码确认登录。这里可能有个小插曲:如果你在电脑终端看不到二维码,或者显示得歪歪扭扭,可以打开wechat-forwarding.py底部,把enableCmdQR=2改成1、-1、-2,或者干脆改成True让它弹出一张图片。
登录成功后,去源群发一句“这是一条测试”,等一两秒,切到目标群看看——如果收到了[转发][你的昵称]: 这是一条测试,恭喜,你的第一条自动转发消息已经跑通了。之后想多转几个群,回到config.json里加几条映射就行。
顺带一提:想匿名转发,消息前加两个斜杠
有些场合不适合暴露发言人身份。项目内置了一个小机关:在源群发消息时,只要内容以//开头,转发出去就会变成匿名。比如在群里发//今晚八点开会,目标群收到的是[转发][匿名]: 今晚八点开会。适合活动抽奖、意见收集这类场景。
你可能需要它的几个时刻
- 社群运营者:手里五六个社群,活动通知要同时送达,防止各群信息不一致。
- 企业内部行政/内勤:部门公告从总部群同步到各项目群,省去逐个转发的重复劳动。
- 讲师、培训师:把课件链接、作业提醒从主群同步到多个学习群,学员体验统一。
- 跨群协作的接口人:你同时挂在几个相关群里,两边消息需要对齐,用它当中间桥梁。
另外配置里还有一个可选的小功能:add段可以设置当某个群还有空位时,自动提醒你指定的好友“这个群可以进人了”,适合做拉新社群的朋友。用不上就放着不管,不影响转发。
新手最容易踩的四个坑
问:二维码出不来,或者扫码后一直登录失败?先按前面的方法调整enableCmdQR的值。如果还不行,要认清一个现实:这个工具依赖微信的网页版登录通道,部分较新的微信账号本身就不支持网页登录,这种情况下工具确实无法使用,只能换账号或放弃。
问:明明配置了群,消息却没转出去?九成是群名没对上。程序按群名精确匹配,去微信里把群名原样复制进config.json,注意别带多余空格。
问:图片文件没有转发?看一眼max_file_size。超过上限的文件会被跳过,想转大文件就把数值调大。另外文件会先下载到data_path指向的目录(默认是data文件夹),目录不存在时程序会自动创建,不用手动建。
问:会不会两个群互相转发,造成死循环刷屏?不会。程序对“自己发出的消息”做了跳过处理,你这边转出去的消息不会再被当成新消息转回来,所以可以放心配置互相引用的群组。
你的第一条自动转发消息会是什么?
工具本身不复杂,一个主程序、一份 JSON 配置,装上依赖扫码登录就能用。真正的价值在于:它把“重复劳动”变成了“一次性配置”。配置好之后,你在群里正常说话,消息会自动流向该去的地方。
如果让你现在就动手配,你的第一条自动转发消息会是什么?是活动公告、值班通知,还是给爸妈的“今晚回家吃饭”?欢迎把使用中遇到的问题、奇怪的场景反馈给项目作者,仓库里的README.md和config_sample.json也都写着最基础的说明,可以对照着看。
想试试的话,先把它克隆到本地:
git clone https://gitcode.com/gh_mirrors/we/wechat-forwarding然后照着上面的四步走一遍。下次再有人问“那么多群你怎么同步消息的”,你就可以淡定地说一句:消息早就自动转发过去了。
【免费下载链接】wechat-forwarding在微信群之间转发消息项目地址: https://gitcode.com/gh_mirrors/we/wechat-forwarding
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
