Python调用钉钉群机器人发送群消息

1、首先需要一个钉钉群,群才有机器人

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

 

3、添加自定义机器人,配置如下:给机器人命名,选择加签。保存机器人的秘钥、Webhook,python连接机器人需要用到

秘钥:SEC开头的一段字符

Webhook:https://oapi.dingtalk.com/robot/send?access_token=......

4、至此,机器人添加成功

  5、下面是python脚本

如需发送到另一个钉钉群,只需求更改脚本里的 Webhook链接secret秘钥 即可

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

#加签
webhook='https://oapi.dingtalk.com/robot/send?access_token=......' #钉钉机器人webhook
timestamp = str(round(time.time() * 1000))
secret = 'SEC......'  #钉钉机器人秘钥
secret_enc = secret.encode('utf-8')
string_to_sign = '{}\n{}'.format(timestamp, secret)
# print(string_to_sign)
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))
print(timestamp)
print(sign)
webhook=webhook+'&timestamp='+timestamp+'&sign='+sign
print(webhook)
#定义数据类型
headers={'Content-Type':'application/json'}
data={"msgtype":"text","text":{"content":'机器人将发送该备注20221129'},"isAtAll":True}
#发送post请求
res=requests.post(webhook,data=json.dumps(data),headers=headers)
print(res.text)

6、执行python脚本即马上给钉钉群机器人发送消息,如图成功发送

 

 

下一篇继续介绍通过Windows定时任务执行Python脚本给钉钉群发送消息

posted @ 2022-11-29 16:55  dabeen  阅读(2482)  评论(0编辑  收藏  举报