python发送钉钉消息(钉钉群自定义机器人消息Python封装的实例)
python发送钉钉消息
钉钉群自定义机器人消息Python封装的实例一、钉钉群自定义机器人介绍
钉钉群机器人是钉钉群的一个高级扩展功能,然而使用起来却非常简单,只有注册一个钉钉账号即可,就可以将第三方服务的信息聚合到钉钉群中,实现信息的自动化同步,例如:通过聚合github、gitlab等源码管理服务,实现源码更新同步;通过聚合trello、jira等项目协调服务,实现项目信息同步;同事,支持webhook协议的自定义接入,支持更多可能性,例如:将运维报警提醒、自动化测试的结果报告提醒、工作、生活日程安排(上班打卡、下班吃饭、健身、读书、生日、纪念日…)等等的提醒,通过自定义机器人聚合到钉钉中。
目前自定义机器人支持文本(text)、链接(link)、markdown三种消息格式、五种消息类型,详细信息请参考自定义机器人官方文档
二、安装使用
这么好用的功能,只要在群中添加好机器人,得到webhoo地址,在命令行终端马上就可以一睹为快:
|
curl 'https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxx' \ - h 'content-type: application/json' \ - d ' { "msgtype" : "text" , "text" : { "content" : "我就是我, 是不一样的烟火" } }' |
由于各种消息调用,官方只提供java语言的封装,平时使用python比较多,为了更方便平时自动化项目的使用,周末花了点时间用python语言对各种消息类型进行了一一封装,代码已开源在github上,同时也上传了pypi。
1、项目源码地址如下:dingtalkchatbot
2、安装命令如下:
|
pip install dingtalkchatbot |
3、支持功能如下:
- 支持text消息;
- 支持link消息;
- 支持markdown消息;
- 支持actioncard消息;
- 支持消息发送失败时自动通知;
- 支持python2、python3;
三、各消息类型使用示例
|
from dingtalkchatbot.chatbot import dingtalkchatbot # webhook地址 webhook = 'https://oapi.dingtalk.com/robot/send?access_token=这里填写自己钉钉群自定义机器人的token' # 初始化机器人小丁 xiaoding = dtalkchatbot(webhook) # text消息@所有人 xiaoding.send_text(msg = '我就是小丁,小丁就是我!' , is_at_all = true) |
|
# text消息之@指定用户 at_mobiles = [ '这里填写需要提醒的用户的手机号码,字符串或数字都可以' ] xiaoding.send_text(msg = '我就是小丁,小丁就是我!' , at_mobiles = at_mobiles) |
|
# link消息 xiaoding.send_link(title = '万万没想到,某小璐竟然...' , text = '故事是这样子的...' , message_url = 'http://www.kwongwah.com.my/?p=454748", pic_url="https://pbs.twimg.com/media/cewj7edwgae5eif.jpg" alt="python发送钉钉消息(钉钉群自定义机器人消息Python封装的实例)" border="0" /> |
|
# markdown消息@所有人 xiaoding.send_markdown(title = '氧气文字' , text = '#### 广州天气\n' '> 9度,西北风1级,空气良89,相对温度73%\n\n' '> ![美景](http://www.sinaimg.cn/dy/slidenews/5_img/2013_28/453_28488_469248.jpg" alt="python发送钉钉消息(钉钉群自定义机器人消息Python封装的实例)" border="0" /> '> ###### 10点20分发布 [天气](http://www.thinkpage.cn/) \n' , is_at_all = true) |
|
# markdown消息@指定用户 xiaoding.send_markdown(title = '氧气文字' , text = '#### 广州天气 @用户手机号\n' '> 9度,西北风1级,空气良89,相对温度73%\n\n' '> ![美景](http://www.sinaimg.cn/dy/slidenews/5_img/2013_28/453_28488_469248.jpg" alt="python发送钉钉消息(钉钉群自定义机器人消息Python封装的实例)" border="0" /> '> ###### 10点20分发布 [天气](http://www.thinkpage.cn/) \n' , at_mobiles = at_mobiles) |
|
# feedcard消息类型 feedlink1 = feedlink(title = "氧气美女" , message_url = "https://www.dingtalk.com/" , pic_url = "https://unzippedtv.com/wp-content/uploads/sites/28/2016/02/asian.jpg" alt="python发送钉钉消息(钉钉群自定义机器人消息Python封装的实例)" border="0" /> feedlink2 = feedlink(title = "氧眼美女" , message_url = "https://www.dingtalk.com/" , pic_url = "https://unzippedtv.com/wp-content/uploads/sites/28/2016/02/asian.jpg" alt="python发送钉钉消息(钉钉群自定义机器人消息Python封装的实例)" border="0" /> feedlink3 = feedlink(title = "氧神美女" , message_url = "https://www.dingtalk.com/" , pic_url = "https://unzippedtv.com/wp-content/uploads/sites/28/2016/02/asian.jpg" alt="python发送钉钉消息(钉钉群自定义机器人消息Python封装的实例)" border="0" /> links = [feedlink1.get_data(), feedlink2.get_data(), feedlink3.get_data()] xiaoding.send_feed_card(links) |
|
# actioncard整体跳转消息类型 btns1 = [{ "title" : "查看详情" , "actionurl" : "https://www.dingtalk.com/" }] actioncard1 = actioncard(title = '万万没想到,竟然...' , text = '![选择](http://www.songshan.es/wp-content/uploads/2016/01/yin-yang.jpg" alt="python发送钉钉消息(钉钉群自定义机器人消息Python封装的实例)" border="0" /> btns = btns1, btn_orientation = 1 , hide_avatar = 1 ) xiaoding.send_action_card(actioncard1) |
|
# actioncard独立跳转消息类型(双选项) btns2 = [{ "title" : "支持" , "actionurl" : "https://www.dingtalk.com/" }, { "title" : "反对" , "actionurl" : "http://www.back china.com/news/2018/01/11/537468.html" }] actioncard2 = actioncard(title = '万万没想到,竟然...' , text = '![选择](http://www.songshan.es/wp-content/uploads/2016/01/yin-yang.jpg" alt="python发送钉钉消息(钉钉群自定义机器人消息Python封装的实例)" border="0" /> btns = btns2, btn_orientation = 1 , hide_avatar = 1 ) xiaoding.send_action_card(actioncard2) |
|
# actioncard独立跳转消息类型(列表选项) btns3 = [{ "title" : "支持" , "actionurl" : "https://www.dingtalk.com/" }, { "title" : "中立" , "actionurl" : "https://www.dingtalk.com/" }, { "title" : "反对" , "actionurl" : "https://www.dingtalk.com/" }] actioncard3 = actioncard(title = '万万没想到,竟然...' , text = '![选择](http://www.songshan.es/wp-content/uploads/2016/01/yin-yang.jpg" alt="python发送钉钉消息(钉钉群自定义机器人消息Python封装的实例)" border="0" /> btns = btns3, btn_orientation = 1 , hide_avatar = 1 ) xiaoding.send_action_card(actioncard3) |
更多使用场景,尽情展开想象吧…
以上这篇钉钉群自定义机器人消息python封装的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持开心学习网。
原文链接:https://blog.csdn.net/zhuifengshenku/article/details/79147479
- vue怎么引入axios(如何用vue封装axios请求)
- python中的eval函数的用法(Python eval的常见错误封装及利用原理详解)
- php开发api接口登录(PHP调用接口API封装的例子)
- wx小程序请求封装(小程序wx.getUserProfile接口的具体使用)
- css下填充代码(CSS学习笔记之常用Mixin封装实例代码)
- phpcurl缺点(PHP封装cURL工具类与应用示例)
- 前端面试题之promise的手动封装(Promise面试题详解之控制并发)
- angular封装公共组件(详解Angular组件之生命周期二)
- python发送钉钉消息(钉钉群自定义机器人消息Python封装的实例)
- vue父组件怎么用子组件的数据(Vue使用v-model封装el-pagination组件的全过程)
- laravel怎样封装增删改查(laravel框架上传图片实现实时预览功能)
- docker怎么使用supervisor(supervisor下的Dockerfile的多服务镜像封装操作)
- axios实现原理(项目中Axios二次封装实例Demo)
- angular封装进度条组件(如何用DevUI搭建自己的Angular组件库)
- react组件封装成函数方法(React虚拟列表的实现)
- js实现自动轮播(原生js封装无缝轮播功能)
- 爱情可以当饭吃吗(怎么回复)
- 高考数学题(高考数学题基础题占多少分)
- 没钱只能吃土(没钱要吃土了幽默短信发朋友圈)
- 今年考高会很难吗(今年高考会考试吗)
- 盘古开天地 他创造了世界,谁创造了盘古 盘古是伏羲吗(盘古开天地他创造了世界)
- 关于队徽 你了解这些么 二(关于队徽你了解这些么)
热门推荐
- php连接oracle(PHP远程连接oracle数据库操作实现方法图文详解)
- 内网nginx配置https详解(Nginx如何配置Http、Https、WS、WSS的方法步骤)
- 如何查找JS错误
- python简单代码实例(Python实现 版本号对比功能的实例代码)
- php获取socket连接的详细信息(php使用socket调用http和smtp协议实例小结)
- python在dataframe添加数据(使用Python向DataFrame中指定位置添加一列或多列的方法)
- ILSpy反编译工具的使用
- 网站图片防盗链的常见方法
- 学会python一月能赚多少钱(学习python的前途 python挣钱)
- C#中ICollection介绍
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9