python&shell发送钉钉消息

python发送钉钉消息

复制代码
复制
import requests import time import hashlib import hmac import base64 import re def SendMessageBySEC(message = ''): """ 机器人设置了加密签名的访问方式 :param message: :return: """ # secret:密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串,例如:SECxxxxxxxx secret = 'SECxxxxxxxx' # access_token:创建完钉钉机器人之后会自动生成,例如:access_tokenxxxx access_token = 'access_tokenxxxx' # timestamp:当前时间戳,单位是毫秒,与请求调用时间误差不能超过1小时 timestamp = int(round(time.time() * 1000)) # 加密,获取sign和timestamp data = (str(timestamp) + '\n' + secret).encode('utf-8') secret = secret.encode('utf-8') signature = base64.b64encode(hmac.new(secret, data, digestmod=hashlib.sha256).digest()) reg = re.compile(r"'(.*)'") signature = str(re.findall(reg,str(signature))[0]) # 发送信息 url = 'https://oapi.dingtalk.com/robot/send?access_token=%s&sign=%s&timestamp=%s' % (access_token,signature,timestamp) headers = {"Content-Type": "application/json ;charset=utf-8 "} try: response = requests.post(url, headers=headers, json=message, timeout=(3, 60)) print(response) response_msg = str(response.status_code) + ' ' + str(response.content) print(response_msg) except Exception as error_msg: print('error_msg==='+str(error_msg)) response_msg = error_msg return response_msg def SendMessageByKeywords(message=''): """ 钉钉机器人设置了关键字的访问方式 :param message: :return: """ # access_token:创建完钉钉机器人之后会自动生成,例如:access_tokenxxxx access_token = 'access_tokenxxxx' # 发送信息 url = 'https://oapi.dingtalk.com/robot/send?access_token=%s' % access_token headers = {"Content-Type": "application/json ;charset=utf-8 "} try: response = requests.post(url, headers=headers, json=message, timeout=(3, 60)) print(response) response_msg = str(response.status_code) + ' ' + str(response.content) print(response_msg) except Exception as error_msg: print('error_msg==='+str(error_msg)) response_msg = error_msg return response_msg if __name__ == "__main__": # msg = {"msgtype": "text", "text": {"content": "test msg"}, "at": {"isAtAll": False}} # SendMessageBySEC(msg) msg = {"msgtype": "text", "text": {"content": "keywords: test msg"}, "at": {"isAtAll": False}} # 将keywords替换为设置钉钉机器人人时设置的关键字 SendMessageByKeywords(msg)
复制代码

shell发送钉钉消息

钉钉机器人设置了关键字的发送方式

复制
curl 'https://oapi.dingtalk.com/robot/send?access_token=access_tokenxxxx' -H 'Content-Type: application/json' -d ' {"msgtype": "text", "text": { "content": "keywords: test msg " } }'
复制
# 将keywords替换为设置钉钉机器人人时设置的关键字
posted @   sxlong_work  阅读(1117)  评论(0编辑  收藏  举报
编辑推荐:
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
阅读排行:
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· 软件产品开发中常见的10个问题及处理方法
· Vite CVE-2025-30208 安全漏洞
· MQ 如何保证数据一致性?
点击右上角即可分享
微信分享提示