首页 > 编程 > Python > 正文

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

2019-11-25 11:28:29
字体:
来源:转载
供稿:网友

这篇文章主要介绍了python3.8 微信发送服务器监控报警消息代码实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

python版本

 >>> import sys >>> sys.version '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])

效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表