python使用自定义钉钉机器人的示例代码


Posted in Python onJune 24, 2020

1.添加自定义机器人

python使用自定义钉钉机器人的示例代码

python使用自定义钉钉机器人的示例代码

2.编写python代码请求钉钉机器人所给的webhook

钉钉自定义机器人官方文档

安全方式使用加签的方式:

第一步,把timestamp+"\n"+密钥当做签名字符串,使用HmacSHA256算法计算签名,然后进行Base64 encode,最后再把签名参数再进行urlEncode,得到最终的签名(需要使用UTF-8字符集)。

参数 说明
timestamp 当前时间戳,单位是毫秒,与请求调用时间误差不能超过1小时
secret 密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串
import requests
 
 
#python 3.8
import time
import hmac
import hashlib
import base64
import urllib.parse
 
timestamp = str(round(time.time() * 1000))
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)

第二步,把 timestamp和第一步得到的签名值拼接到URL中。

参数 说明
timestamp 第一步使用到的时间戳
sign 第一步得到的签名值

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

第三步,发送请求

url='生成的Webhook×tamp={}&sign={}'.format(timestamp, sign)
 
 
print (url)
headers={
 'Content-Type':'application/json'
}
json={"msgtype": "text",
 "text": {
  "content": "888"
 } }
resp=requests.post(url=url,headers=headers,json=json)
print (resp.text)

结果:

 python使用自定义钉钉机器人的示例代码

整体代码:

import requests
 
 
#python 3.8
import time
import hmac
import hashlib
import base64
import urllib.parse
 
timestamp = str(round(time.time() * 1000))
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)
 
 
url='生成的Webhook×tamp={}&sign={}'.format(timestamp, sign)
 
 
print (url)
headers={
 'Content-Type':'application/json'
}
json={"msgtype": "text",
 "text": {
  "content": "测试"
 } }
resp=requests.post(url=url,headers=headers,json=json)
print (resp.text)

到此这篇关于python使用自定义钉钉机器人的示例代码的文章就介绍到这了,更多相关python 自定义钉钉机器人内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python合并多个装饰器小技巧
Apr 28 Python
对TensorFlow中的variables_to_restore函数详解
Jul 30 Python
Python虚拟环境的原理及使用详解
Jul 02 Python
python正则表达式匹配不包含某几个字符的字符串方法
Jul 23 Python
Python产生一个数值范围内的不重复的随机数的实现方法
Aug 21 Python
python 中xpath爬虫实例详解
Aug 26 Python
Python 脚本拉取 Docker 镜像问题
Nov 10 Python
如何分离django中的媒体、静态文件和网页
Nov 12 Python
python 实现屏幕录制示例
Dec 23 Python
pycharm2020.2 配置使用的方法详解
Sep 16 Python
浅析PyCharm 的初始设置(知道)
Oct 12 Python
Python的collections模块真的很好用
Mar 01 Python
pytorch中的weight-initilzation用法
Jun 24 #Python
pytorch查看模型weight与grad方式
Jun 24 #Python
pytorch  网络参数 weight bias 初始化详解
Jun 24 #Python
可视化pytorch 模型中不同BN层的running mean曲线实例
Jun 24 #Python
python3.x中安装web.py步骤方法
Jun 23 #Python
python如何删除文件、目录
Jun 23 #Python
TensorFlow保存TensorBoard图像操作
Jun 23 #Python
You might like
php 无限分类的树类代码
2009/12/03 PHP
PHP对表单提交特殊字符的过滤和处理方法汇总
2014/02/18 PHP
PHP获取当前页面URL函数实例
2014/10/22 PHP
php文件后缀不强制为.php的实操方法
2019/09/18 PHP
CSS+Table图文混排中实现文本自适应图片宽度(超简单+跨所有浏览器)
2009/02/14 Javascript
JavaScript学习笔记(十)
2010/01/17 Javascript
JQUERY dialog的用法详细解析
2013/12/19 Javascript
javascript+HTML5自定义元素播放焦点图动画
2016/02/21 Javascript
基于jquery编写分页插件
2016/03/07 Javascript
jQuey将序列化对象在前台显示地实现代码(方法总结)
2016/12/13 Javascript
JavaScript数据结构之广义表的定义与表示方法详解
2017/04/12 Javascript
Js利用console计算代码运行时间的方法示例
2017/09/24 Javascript
Angular4实现鼠标悬停3d倾斜效果
2017/10/25 Javascript
详解Vue结合后台的列表增删改案例
2018/08/21 Javascript
微信小程序自定义轮播图
2018/11/04 Javascript
微信小程序页面传多个参数跳转页面的实现方法
2019/05/17 Javascript
JS实现字体背景跑马灯
2020/01/06 Javascript
[02:56]《DAC最前线》之国外战队抵达上海备战亚洲邀请赛
2015/01/28 DOTA
Python scikit-learn 做线性回归的示例代码
2017/11/01 Python
Python中join函数简单代码示例
2018/01/09 Python
python批量修改ssh密码的实现
2019/08/08 Python
手把手教你pycharm专业版安装破解教程(linux版)
2019/09/26 Python
python使用opencv实现马赛克效果示例
2019/09/28 Python
python pyenv多版本管理工具的使用
2019/12/23 Python
浅谈Python线程的同步互斥与死锁
2020/03/22 Python
美国女士时尚珠宝及配饰购物网站:Icing
2018/07/02 全球购物
EJB与JAVA BEAN的区别
2016/08/29 面试题
先进集体事迹材料
2014/02/17 职场文书
七夕活动策划方案
2014/08/16 职场文书
2014离婚协议书范文两篇
2014/09/15 职场文书
大学生赌博检讨书
2014/09/22 职场文书
2014年煤矿工作总结
2014/11/24 职场文书
计算机考试作弊检讨书1000字
2015/01/01 职场文书
打架检讨书
2015/01/27 职场文书
PYTHON基于Pyecharts绘制常见的直角坐标系图表
2022/04/28 Python
安装harbor作为docker镜像仓库的问题
2022/06/14 Servers