python 之 企业微信报警
coding=utf8
Author:dongml
from urllib2 import urlopen from urllib2 import Request import sys, json
解决中文转码
reload(sys) sys.setdefaultencoding( “utf-8” )
获取企业微信token
def get_token(url, corpid, corpsecret): token_url = ‘%s/cgi-bin/gettoken?corpid=%s&corpsecret=%s’ % (url, corpid, corpsecret) token = json.loads(urlopen(token_url).read().decode())[‘access_token’] return token
构建告警信息json
def messages(msg): values = { “touser”: ‘@all’, “msgtype”: ‘text’, “agentid”: 1000003, #注意修改为对应应用的agentid ,如图有说明 “text”: {‘content’: msg}, “safe”: 0 } msges=(bytes(json.dumps(values))) return msges
#发送告警信息 def send_message(url,token, data): send_url = ‘%s/cgi-bin/message/send?access_token=%s’ % (url,token) respone=urlopen(Request(url=send_url, data=data)).read() x = json.loads(respone.decode())[‘errcode’] # print(x) if x == 0: print (‘Succesfully’) else: print (‘Failed’)
#函数调用 test_token=get_token(url, corpid, corpsecret) msg_data= messages(msg) send_message(url,test_token, msg_data)
说明:corpid在管理后台:我的企业—》企业信息—》企业ID :corpsecret需要创建自建应用:企业应用—》自建应用。如下图!(https://img-blog..net/20180717200552373?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM1Mjk5ODYz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)