如何快速搭建企业微信机器人:轻量级框架指南
【免费下载链接】we-work-botA lite framework for wechat work bot. 轻量级企业微信群聊机器人框架。项目地址: https://gitcode.com/gh_mirrors/we/we-work-bot
每天手动在群里@全员发日报,重复又占带宽;服务器半夜挂掉,没人知道。we-work-bot 就是一个轻量级企业微信群聊机器人框架,写给想把通知、提醒推进群的开发:把 Webhook 地址封装成一行链式调用,文本、Markdown、图片消息直接发出去,依赖只有 requests 一个。
🚀 快速体验:发第一条测试消息
一条命令装完,Python 3.5+ 环境即可:
pip3 install weworkbot在群里添加企业微信机器人,复制它的 Webhook 地址,3 行代码发出第一条消息,再加 2 行验证 Markdown:
from weworkbot import Bot as wBot url = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_KEY" wBot(url).set_text("第一条企业微信机器人消息").send() wBot(url).set_text('<font color="info">数据已更新</font>', type='markdown').send()跑完群里就有 2 条消息。要发本地图片,把 set_text 换成 set_image_path('test.jpeg'),Base64 编码和 MD5 框架帮你算好,不用自己写。
💡 能力拆解:每个功能解决什么场景
定时提醒:到点自动发消息
every(second/minute/hour/day) 加 run() 启动循环,一个参数改间隔;配 check(你的函数) 可以条件成立才发。仓库 example.py 里有 7 种组合,打开照着抄。适合谁用:做日报、周期巡检、监控报警的人。
@指定成员:重要信息不刷屏就沉底
set_mentioned_list 传 ["@all"] 可 @ 全员,set_mentioned_mobile_list 按手机号 @,仅限 text 类型。适合谁用:发会议通知、分派任务、报警时 @值班的人。
发送计数控制:自动刹车不刷屏
set_check_counter(5) 检查 5 次条件后停,set_send_counter(3) 发满 3 条停,谁先到谁生效,循环自动退出。适合谁用:可能无限跑下去的报警消息,以及不想打扰群里的测试环境。
多机器人管理:一个管理器管多个 Webhook
BotMgr 里 add_bot 或 append 塞入多个机器人,start() 一个管理器并行跑完全部,join() 等收尾。适合谁用:要给多个群分别发通知、或同一个群按不同频率发多种消息的人。
📊 落地场景:三个典型用法
- 运维:巡检脚本用内置调度每 10 分钟跑一次,CPU 超阈值时报警群自动 @值班,值班者 1 分钟内看到消息(示例)。
- 开发团队:把当天提交记录汇总成 Markdown 日报,下班前自动推到项目群,每人每天省 1 次手动贴消息(示例)。
- 行政:会议通知带 @all 一次性发出,不用再重复催,全员一次看到(示例)。
🛡️ 避坑指南:三个高频问题
- 现象:创建 wBot(url) 直接 AssertionError。原因:地址没匹配上 https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key= 前缀,常见是多了空格或 key 已失效。解法:逐字符核对地址,或在群里删掉机器人重新添加换新 key。
- 现象:Markdown 消息里写了 @ 但没人被 @。原因:官方接口 markdown 类型不支持 @,框架只打警告不报错。解法:需要 @ 就换 text 类型发。
- 现象:run() 一直不停。原因:发送和检查计数默认是 -1,不设置的话循环每 60 秒发一条,永不退出。解法:用 set_send_counter(3) 限制次数,或 Ctrl+C 停掉。
小团队维护几个企业微信群的通知和提醒,用这个框架就够了,代码量比自己裸调接口少得多。下一步去仓库的 example.py 里挑一个定时示例跑起来,30 秒后你就能体会 every(30) 的节奏。
【免费下载链接】we-work-botA lite framework for wechat work bot. 轻量级企业微信群聊机器人框架。项目地址: https://gitcode.com/gh_mirrors/we/we-work-bot
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考