影刀RPA进阶教程批量消息通知与多渠道推送方案——飞书钉钉企业微信全覆盖自动化流程跑完了结果在哪里看很多人靠手动打开 Excel 检查。但流程是凌晨3点跑的——凌晨3点你去开 Excel自动化流程的最后一公里把结果主动推给你而不是等你去查。这篇文章覆盖飞书、企业微信、钉钉三大平台的消息推送方案以及如何封装成通用的通知模块。一、消息通知的三种形态形态技术适用场景飞书机器人Webhook HTTP请求飞书用户消息卡片可交互企业微信机器人Webhook企业微信用户简单文本/图文钉钉机器人Webhook 加签钉钉用户支持Markdown三者的底层都是 HTTP POST 请求只是请求格式和鉴权方式不同。二、飞书自定义机器人——最推荐的方式拼多多店群自动化报活动上架飞书机器人的消息卡片功能在三个平台里最丰富。步骤1创建机器人获取 Webhook飞书群 → 群设置 → 群机器人 → 添加自定义机器人 → 复制 Webhook 地址Webhook 格式https://open.feishu.cn/open-apis/bot/v2/hook/xxxxx步骤2发送文本消息# Python代码指令——发送飞书文本消息importrequestsimportjson webhook_urlhttps://open.feishu.cn/open-apis/bot/v2/hook/xxxxxdefsend_feishu_text(content):payload{msg_type:text,content:{text:content}}headers{Content-Type:application/json}responserequests.post(webhook_url,jsonpayload,headersheaders)returnresponse.json()# 发送测试resultsend_feishu_text(自动化流程已完成共采集500条商品数据)print(result)步骤3发送富文本卡片消息文本消息太简陋了。用卡片消息可以发带链接、带颜色的内容# 发送飞书卡片消息——日报格式defsend_feishu_card(title,items,status_color):发送结构化日报卡片importrequests,json,time# 构建卡片内容elements[]foriteminitems:elements.append({tag:div,text:{tag:lark_md,content:f●{item}}})payload{msg_type:interactive,card:{header:{title:{tag:plain_text,content:title},template:status_color# blue/green/red/orange},elements:[{tag:div,text:{tag:lark_md,content:f**执行时间**{time.strftime(%Y-%m-%d %H:%M)}}},{tag:hr},*elements,{tag:hr},{tag:note,elements:[{tag:plain_text,content:自动发送 · 影刀RPA}]}]}}headers{Content-Type:application/json}responserequests.post(webhook_url,jsonpayload,headersheaders)returnresponse.json()# 发送日报日报标题 商品数据采集日报数据摘要[f平台拼多多 | 关键词连衣裙 | 采集数量500条,f平台TEMU | 关键词wireless earbuds | 采集数量200条,f新增降价商品12条查看详情,f异常商品3条商品已下架]send_feishu_card(日报标题,数据摘要,blue)三、企业微信机器人企业微信的做法类似但消息格式更简单# 企业微信机器人——Webhook地址企微webhookhttps://qyapi.weixin.qq.com/cgi-bin/webhook/send?keyxxxxxdefsend_wecom_text(content):发送企业微信文本消息importrequests,json payload{msgtype:text,text:{content:content}}headers{Content-Type:application/json}responserequests.post(企微webhook,jsonpayload,headersheaders)returnresponse.json()defsend_wecom_markdown(content):发送企业微信Markdown消息importrequests,json payload{msgtype:markdown,markdown:{content:content}}headers{Content-Type:application/json}responserequests.post(企微webhook,jsonpayload,headersheaders)returnresponse.json()# 发送Markdown日报日报内容# 采集日报 2026-06-10 执行时间08:00 **采集数据** - 拼多多font colorinfo500条/font - TEMUfont colorinfo200条/font **异常提醒** - font colorwarning3条商品已下架/font - font colorwarning代理IP失败1次/font send_wecom_markdown(日报内容)四、钉钉机器人——需要加签钉钉的安全机制需要计算签名比其他两个复杂一些# 钉钉机器人——加签模式importtimeimporthmacimporthashlibimportbase64importrequestsimportjson 钉钉webhookhttps://oapi.dingtalk.com/robot/send?access_tokenxxxxx钉钉secretSECxxxxxxxx# 机器人设置里的加签密钥defsend_dingtalk_markdown(title,text):# 计算签名timestampstr(round(time.time()*1000))secret_enc钉钉secret.encode(utf-8)string_to_signf{timestamp}\n{钉钉secret}string_to_sign_encstring_to_sign.encode(utf-8)hmac_codehmac.new(secret_enc,string_to_sign_enc,digestmodhashlib.sha256).digest()signbase64.b64encode(hmac_code).decode(utf-8)![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/37164cf732494b46ac15a4b09604d59e.png#pic_center)urlf{钉钉webhook}timestamp{timestamp}sign{sign}payload{msgtype:markdown,markdown:{title:title,text:text}}headers{Content-Type:application/json}responserequests.post(url,jsonpayload,headersheaders)returnresponse.json()# 发送send_dingtalk_markdown(采集完成,共采集700条数据详见Excel)五、封装成通用的通知模块三个平台的底层都是 HTTP 请求只有消息格式不同。我们封装一个通用模块# 通用通知子流程——platform参数决定推哪个平台发送通知(平台,标题,内容列表,状态色):如果 平台飞书:发送飞书卡片(标题,内容列表,状态色)elif平台企业微信:# 企业微信卡片功能有限用Markdownmarkdown内容构建企业微信Markdown(标题,内容列表,状态色)发送企业微信Markdown(markdown内容)elif平台钉钉:markdown内容构建钉钉Markdown(标题,内容列表,状态色)[video(video-WeEVKgBJ-1781496105062)(type-csdn)(url-https://live.csdn.net/v/embed/526817)(image-https://v-blog.csdnimg.cn/asset/1d3c3709da119dd8c13ab01e9b282520/cover/Cover0.jpg)(title-TEMU店群矩阵自动化运营核价报活动)]发送钉钉(markdown内容)elif平台全部:# 同时推三个平台发送飞书卡片(标题,内容列表,状态色)等待(2秒)# 避免同时请求发送企业微信Markdown(构建企业微信Markdown(标题,内容列表,状态色))等待(2秒)发送钉钉(构建钉钉Markdown(标题,内容列表,状态色))六、通知策略设计不是一个流程跑完就发一条。通知要有策略策略一日报汇总推荐# 把所有流程的结果汇总每天发一次汇总结果{}执行拼多多采集()→ 加入到汇总 执行TEMU采集()→ 加入到汇总 执行小红书采集()→ 加入到汇总# 所有任务结束后统一发送发送通知(飞书,今日采集汇总,汇总结果)策略二异常即时通知 成功汇总# 正常结果汇总发异常即时发执行采集任务():如果 执行成功:汇总到日报()![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/85d6bd9e324443cc86b9602c22bb161c.png#pic_center)否则:发送即时通知(异常,f{任务名}执行失败原因{错误原因})策略三分级通知# 根据严重程度选择通知方式如果 错误级别严重:发送通知(全部,严重告警,错误信息)# 所有渠道发送elif错误级别一般:发送通知(飞书,一般提醒,错误信息)否则:记录到日志文件()# 不推消息只记日志七、Webhook 地址的安全管理不要把 Webhook URL 写在流程里万一流程被分享出去别人就能往你的群发消息。# 安全做法Webhook 放在配置文件中Webhook配置读取Excel(D:\配置\密钥配置.xlsx,SheetWebhook)# 这个文件不要提交到Git不要分享飞书webhook获取单元格值(Webhook配置,飞书,2)![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/a876208592a8489785456a92bf7173d8.png#pic_center)企微webhook获取单元格值(Webhook配置,企业微信,2)钉钉webhook获取单元格值(Webhook配置,钉钉,2)钉钉secret获取单元格值(Webhook配置,钉钉Secret,2)内容标签#影刀RPA #飞书通知 #企业微信 #消息推送 #RPA进阶作者林焱本文为《影刀RPA学习手册》系列文章之一内容源于实操经验的整理与分享。