python实现服务器监控报警消息用微信发送(附代码)
程序员文章站
2022-03-26 13:29:46
前言 文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。 作者:NicePython PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http://t.cn/A6Zvjdun 这篇文章主要介绍了python3.8 ......
前言
文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
作者:nicepython
ps:如有需要python学习资料的小伙伴可以加点击下方链接自行获取http://t.cn/a6zvjdun
这篇文章主要介绍了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)]'
代码
import urllib.request,urllib.error,json import sys class 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])
效果
下一篇: 【字符串】最长回文子串