基于Python的消息推送(钉钉、微信、QQ)


前言

本文章重点在于可行性,若文中有未提及内容请查阅相关官方文档,Python版本为3.6.8


一、钉钉机器人

1. 新建群聊

只要权限能够在群里添加机器人即可,这里以考试群为例

2. 添加机器人

群设置 -> 智能群助手 -> 添加机器人 -> 选择自定义机器人

3. 设置机器人

安全设置选择加签即可 记下加签后内容栏中的值(拖动复制) 以及 设置完成获得的webhook值

4. 程序编写

dingding_text -> 所需发送的消息 webhook   -> webhook地址 secret    -> 加签值 参数添加完直接运行即可 更多消息形式及功能详见

# 钉钉推送
import json
import time
import requests
import hmac
import hashlib
import base64
import urllib.parse

dingding_text = This is a new message from DingDing Robot

webhook = This should be your WebHook address
secret = This should be your secret key

timestamp = str(round(time.time() * 1000))
secret_enc = secret.encode(utf-8)
string_to_sign = {}
{}.format(timestamp, secret)
string_to_sign_enc = string_to_sign.encode(utf-8)
hmac_code = hmac.new(secret_enc, string_to_sign_enc, digestmod=hashlib.sha256).digest()
sign = urllib.parse.quote_plus(base64.b64encode(hmac_code))
url = %s&timestamp=%s&sign=%s % (webhook, timestamp, sign)

headers = {
          
   Content-Type: application/json}
data = {
          
   
    "msgtype": "text",
    text: {
          
   
        content: f{
            
     dingding_text}

    }
}
res = requests.post(url, data=json.dumps(data), headers=headers)

if res.json()[errmsg] == ok:
    print("message send success")

二、Server酱(微信)

1. 注册登录

2. 获取设置

3. 程序编写

二、Qmsg酱(QQ)

1. 注册登录

进入 点击立即使用 扫码登录

2. 获取设置

选择机器人添加好友 记下QMSG Key

3. 程序编写

# Qmsg酱推送
import json
import requests

qmsg_text = This is a new message from Qmsg酱

qmsgKey = This should be your SendKey

url = f"https://qmsg.zendee.cn/send/{
            
     qmsgKey}"
headers = {
          
   Content-Type: application/x-www-form-urlencoded}
data = {
          
   
    msg: f"{
            
     qmsg_text}"
}

response = requests.post(url, data=data)

if json.loads(response.text)[success] == True:
    print("Qmsg酱 消息推送成功")

总结

现在我们就可以通过这三种方式进行不同渠道的消息通知

经验分享 程序员 微信小程序 职场和发展