ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

发送钉钉消息 day07-07

2021-06-13 21:36:52  阅读:163  来源: 互联网

标签:__ 07 timestamp dd day07 sign 发送 secret string


import requests
import time
import hmac
import hashlib
import base64
import urllib.parse

url = "https://oapi.dingtalk.com/robot/send"


# 签名 接口文档 在群机器人-自定义机器人接入
def get_dd_sign():
timestamp = str(round(time.time() * 1000))
secret = 'SECbeca7f462e42a924a9150ad8bbc69b87204241d94b8734678dd4a56396793380'
secret_enc = secret.encode('utf-8')
string_to_sign = '{}\n{}'.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))
return timestamp, sign


# 该群机器人发送 接口文档 在服务端API-消息通知-消息类型与数据格式
def send_dd_msg(msg, at=None, at_all=False):
data = {
"msgtype": "text", # 消息类型
"text": {
# "content": "童鞋测试用一哈"
"content":msg
}, # 发送消息
"at": {
# "atMobiles": ["13049484306"],
"atMobiles":at,
"isAtAll": at_all
} # @某个人或者全部

}
timestamp, sign = get_dd_sign()
params = {
"access_token": "bdfc2cfb8f5b8546910fba1790575ae2fa0e39d47da75684f48eecd62404ad66",
"timestamp": timestamp,
"sign": sign
}
try:
res = requests.post(url, json=data, params=params)
print(res.json())
except:
print("钉钉消息没有发送成功")
else:
if res.json().get("errcode") == 0:
return True


if __name__ == '__main__':
content="童鞋测试用一哈"
at = ["18566296129"]
send_dd_msg(content,at)

标签:__,07,timestamp,dd,day07,sign,发送,secret,string
来源: https://www.cnblogs.com/huyuemei/p/14881252.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有