基于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×tamp=%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酱 消息推送成功")
总结
现在我们就可以通过这三种方式进行不同渠道的消息通知
