浅谈Python 钉钉报警必备知识系统讲解
本章所讲内容:
1、钉钉报警设置
2、钉钉报警脚本运行。
1、钉钉报警设置
钉钉,关于webhook的报警需求,钉钉报警也是我们在公司中常见的报警系统,在这里主要是结合zabbix二次开发使用,来达到完美报警的使用。
1.1、钉钉报警第一步,创建群机器人
接口地址:
https://oapi.dingtalk.com/robot/send?access_token=a25324cafc5b0f2bb239b5e56c71e7f378f570a3d281160dbec9e4f8c4a7e493
文档地址:
https://open-doc.dingtalk.com/docs/doc.htm?spm=a219a.7629140.0.0.karFPe&treeId=257&articleId=105735&docType=1
1.2 发送信信息
1.2.1发送@所有人的消息
1、发送普通的消息
importrequests importjson url='https://oapi.dingtalk.com/robot/send?access_token=a25324cafc5b0f2bb239b5e56c71e7f378f570a3d281160dbec9e4f8c4a7e493' headers={ "Content-Type":"application/json", "Chartset":"utf-8" } #要发送的文本是json格式 request_data={ #此消息的类型为固定的text "msgtype":"text", "text":{ #消息的内容 "content":"大家新年快乐" }, "at":{ #被@人的手机号 "atMobiles":[], #控制@所有人 "isAtAll":True } } #把json转变为字符串格式数据 send_data=json.dumps(request_data) #这个是发送post请求,请求钉钉接口 response=requests.post(url=url,headers=headers,data=send_data) #讲求成功后返回的数据 content=response.content.decode() #打印 #课程vip标准 #替换视频 print(content)
第二步进行接口开发
2、修改结构,具体操作
importsys importjson importrequests url='https://oapi.dingtalk.com/robot/send?access_token=a25324cafc5b0f2bb239b5e56c71e7f378f570a3d281160dbec9e4f8c4a7e493' defWriteLogByDing(content): headers={ "Content-Type":"application/json", "Chartset":"utf-8" } request_data={ "msgtype":"text", "text":{ "content":content }, "at":{ "atMobiles":[], "isAtAll":True } } sendData=json.dumps(request_data) response=requests.post(url=url,headers=headers,data=sendData) content=response.content.decode() print(content) if__name__=="__main__": content=input('请输入想要的信息') #content=sys.argv[1] WriteLogByDing(content)
1.2.2发送带有链接的文档
importrequests importjson url='https://oapi.dingtalk.com/robot/send?access_token=a25324cafc5b0f2bb239b5e56c71e7f378f570a3d281160dbec9e4f8c4a7e493' headers={ "Content-Type":"application/json", "Chartset":"utf-8" } #要发送的文本是json格式 request_data={ #发送链接类型的数据 "msgtype":"link", "link":{ #链接提示 "text":"群机器人是钉钉群的高级扩展功能。群机器人可以将第三方服务的信息聚合到群聊中,实现自动化的信息同步。例如:通过聚合GitHub,GitLab等源码管理服务,实现源码更新同步;通过聚合Trello,JIRA等项目协调服务,实现项目信息同步。不仅如此,群机器人支持Webhook协议的自定义接入,支持更多可能性,例如:你可将运维报警提醒通过自定义机器人聚合到钉钉群。", #链接标题 "title":"自定义机器人协议", #图片url地址 "picUrl":"http://p3.so.qhmsg.com/sdr/200_200_/t013d7a21145c708288.jpg", #信息的链接跳转 "messageUrl":"https://open-doc.dingtalk.com/docs/doc.htm?spm=a219a.7629140.0.0.Rqyvqo&treeId=257&articleId=105735&docType=1" } } #把json转变为字符串格式数据 send_data=json.dumps(request_data) #这个是发送post请求,请求钉钉接口 response=requests.post(url=url,headers=headers,data=send_data) #讲求成功后返回的数据 content=response.content.decode() #打印 #课程vip标准 #替换视频 print(content)
1.2.3发送makedown文档
importrequests importjson url='https://oapi.dingtalk.com/robot/send?access_token=a25324cafc5b0f2bb239b5e56c71e7f378f570a3d281160dbec9e4f8c4a7e493' headers={ "Content-Type":"application/json", "Chartset":"utf-8" } #要发送的文本是json格式 request_data={ "msgtype":"markdown", "markdown":{"title":"杭州天气", "text":"####杭州天气\n>9度,西北风1级,空气良89,相对温度73%\n\n>\n>######10点20分发布[天气](http://www.thinkpage.cn/)" }, "at":{ "atMobiles":[], "isAtAll":False } } #把json转变为字符串格式数据 send_data=json.dumps(request_data) #这个是发送post请求,请求钉钉接口 response=requests.post(url=url,headers=headers,data=send_data) #讲求成功后返回的数据 content=response.content.decode() #打印 print(content)
#要发送的文本是json格式 发送整体跳转的actionCard类型 request_data={ "actionCard":{ "title":"乔布斯20年前想打造一间苹果咖啡厅,而它正是AppleStore的前身", "text":"\n####乔布斯20年前想打造的苹果咖啡厅\n\nAppleStore的设计正从原来满满的科技感走向生活化,而其生活化的走向其实可以追溯到20年前苹果一个建立咖啡馆的计划", "hideAvatar":"0", "btnOrientation":"0", "singleTitle":"阅读全文", "singleURL":"https://www.dingtalk.com/" }, "msgtype":"actionCard" }
{ "feedCard":{ "links":[ { "title":"时代的火车向前开", "messageURL":"https://mp.weixin.qq.com/s?__biz=MzA4NjMwMTA2Ng==&mid=2650316842&idx=1&sn=60da3ea2b29f1dcc43a7c8e4a7c97a16&scene=2&srcid=09189AnRJEdIiWVaKltFzNTw&from=timeline&isappinstalled=0&key=&ascene=2&uin=&devicetype=android-23&version=26031933&nettype=WIFI", "picURL":"https://www.dingtalk.com/" }, { "title":"时代的火车向前开2", "messageURL":"https://mp.weixin.qq.com/s?__biz=MzA4NjMwMTA2Ng==&mid=2650316842&idx=1&sn=60da3ea2b29f1dcc43a7c8e4a7c97a16&scene=2&srcid=09189AnRJEdIiWVaKltFzNTw&from=timeline&isappinstalled=0&key=&ascene=2&uin=&devicetype=android-23&version=26031933&nettype=WIFI", "picURL":"https://www.dingtalk.com/" } ] }, "msgtype":"feedCard" }
总结:
1、钉钉报警设置
2、钉钉报警脚本运行。
到此这篇关于浅谈Python钉钉报警必备知识系统讲解的文章就介绍到这了,更多相关Python钉钉报警内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。