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的Tornado框架中实现简单的在线代理的教程
May 02 Python
Perl中著名的Schwartzian转换问题解决实现
Jun 02 Python
Python循环语句之break与continue的用法
Oct 14 Python
TensorFlow模型保存/载入的两种方法
Mar 08 Python
python实现点对点聊天程序
Jul 28 Python
Python多项式回归的实现方法
Mar 11 Python
Python实现的删除重复文件或图片功能示例【去重】
Apr 23 Python
Python 给屏幕打印信息加上颜色的实现方法
Apr 24 Python
python实现的批量分析xml标签中各个类别个数功能示例
Dec 30 Python
使用pyhon绘图比较两个手机屏幕大小(实例代码)
Jan 03 Python
PyCharm刷新项目(文件)目录的实现
Feb 14 Python
深入浅析Python 命令行模块 Click
Mar 11 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 Xdebug 调试扩展的安装与使用.
2010/03/13 PHP
php iconv() : Detected an illegal character in input string
2010/12/05 PHP
PHP+FastCGI+Nginx配置PHP运行环境
2014/08/07 PHP
php实现图片添加描边字和马赛克的方法
2014/12/10 PHP
PHP滚动日志的代码实现
2015/06/10 PHP
Yii开启片段缓存的方法
2016/03/28 PHP
Thinkphp框架 表单自动验证登录注册 ajax自动验证登录注册
2016/12/27 PHP
PHP内存溢出优化代码详解
2021/02/26 PHP
优化 JavaScript 代码的方法小结
2009/07/16 Javascript
jQuery实现的Email中的收件人效果(按del键删除)
2011/03/20 Javascript
JavaScript的兼容性与调试技巧
2016/11/22 Javascript
fullCalendar中文API官方文档
2017/02/07 Javascript
Vue表单验证插件的制作过程
2017/04/01 Javascript
原生JS实现层叠轮播图
2017/05/17 Javascript
微信小程序开发之animation循环动画实现的让云朵飘效果
2017/07/14 Javascript
解决vue组件中使用v-for出现告警问题及v for指令介绍
2017/11/11 Javascript
vue加载自定义的js文件方法
2018/03/13 Javascript
Vue.js 表单控件操作小结
2018/03/29 Javascript
使用Karma做vue组件单元测试的实现
2020/01/16 Javascript
Python中如何获取类属性的列表
2016/12/26 Python
Python进阶_关于命名空间与作用域(详解)
2017/05/29 Python
Django 浅谈根据配置生成SQL语句的问题
2018/05/29 Python
浅析python参数的知识点
2018/12/10 Python
python3 selenium自动化测试 强大的CSS定位方法
2019/08/23 Python
Python使用sqlite3模块内置数据库
2020/05/07 Python
Python自省及反射原理实例详解
2020/07/06 Python
Python+Selenium实现自动化的环境搭建的步骤(图文)
2020/09/01 Python
python 输入字符串生成所有有效的IP地址(LeetCode 93号题)
2020/10/15 Python
Python从MySQL数据库中面抽取试题,生成试卷
2021/01/14 Python
生物有机护肤品:Aurelia Probiotic Skincare
2018/01/31 全球购物
流行文化收藏品:Sideshow(DC漫画,星球大战,漫威)
2019/03/17 全球购物
亚洲颇具影响力的男性在线购物零售商:His
2019/11/24 全球购物
《两个铁球同时着地》教学反思
2014/02/13 职场文书
三八节主持词
2014/03/17 职场文书
民族学专业职业生涯规划范文:积跬步以至千里
2014/09/11 职场文书
党员学习中共十八大报告思想汇报
2014/09/15 职场文书