python3.8 微信发送服务器监控报警代码,,python版本1


python版本

1 >>> import sys2 >>> sys.version3 ‘3.8.0 (tags/v3.8.0:fa919fd, Oct 14 2019, 19:37:50) [MSC v.1916 64 bit (AMD64)]‘

代码

urllib是python3.8内置的

#!/usr/bin/env python# -*- coding: utf-8 -*-import urllib.request,urllib.error,jsonimport sysclass WeChat(object):        __token_id = ‘‘        # init attribute        def __init__(self,url):                self.__url = url.rstrip(‘/‘)                self.__corpid = ‘[企业号的标识]‘                self.__secret = ‘[管理组凭证密钥]‘        # Get TokenID        def authID(self):                params = {‘corpid‘:self.__corpid, ‘corpsecret‘:self.__secret}                data = urllib.parse.urlencode(params)                content = self.getToken(data)                try:                        self.__token_id = content[‘access_token‘]                        # print content[‘access_token‘]                except KeyError:                        raise KeyError        # Establish a connection        def getToken(self,data,url_prefix=‘/‘):                url = self.__url + url_prefix + ‘gettoken?‘                try:                        response = urllib.request.Request(url + data)                except KeyError:                        raise KeyError                result = urllib.request.urlopen(response)                content = json.loads(result.read())                return content        # Get sendmessage url        def postData(self,data,url_prefix=‘/‘):                url = self.__url + url_prefix + ‘message/send?access_token=%s‘ % self.__token_id                request = urllib.request.Request(url,data.encode())                print(url)                print(data)                try:                        result = urllib.request.urlopen(request)                except urllib.error.HTTPError as e:                        if hasattr(e,‘reason‘):                                print(‘reason‘,e.reason)                        elif hasattr(e,‘code‘):                                print(‘code‘,e.code)                        return 0                else:                        content = json.loads(result.read())                        result.close()                return content        # send message        def sendMessage(self,touser,message):                self.authID()                data = json.dumps({                        ‘touser‘:"[企业号中的用户帐号]",                        ‘toparty‘:"[企业号中的部门id]",                        ‘msgtype‘:"[消息类型]",                        ‘agentid‘:"[企业号中的应用id]",                        ‘text‘:{                                ‘content‘:message                        },                        ‘safe‘:"0"                },ensure_ascii=False)                response = self.postData(data)                print(response)if __name__ == ‘__main__‘:        a = WeChat(‘https://qyapi.weixin.qq.com/cgi-bin‘)        a.sendMessage(sys.argv[1],sys.argv[3])

效果

技术图片

技术图片

python3.8 微信发送服务器监控报警代码

评论关闭