python发送消息给钉钉

这种是机器人IP白名单形式

import json
import requests

headers = {'Content-Type': 'application/json;charset=utf-8'}
boturl = "https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxx"
def msg(text):
    # 返回钉钉机器人所需的文本格式
    json_text = {
        "msgtype": "text",
        "text": {
            "content": text
        },
    }
    # print(json.dumps(text))
    print(requests.post(boturl, json.dumps(json_text), headers=headers).content)


msg('hello world')

机器人加签的方法

加签需要把这段密钥进行转换

如图,说明文档中有签转换方法 

#python 3.8
import time
import hmac
import hashlib
import base64
import urllib.parse

timestamp = str(round(time.time() * 1000))
secret = 'this is secret'                    # 替换成你的签
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))
print(timestamp)
print(sign)

会输出两段,一个时间戳,一段签码

然后拼接进行拼接

https://oapi.dingtalk.com/robot/send?access_token=XXXXXX&timestamp=XXX&sign=XXX

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值