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


Posted in Python onNovember 05, 2019

这篇文章主要介绍了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,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])

效果

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

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python工程师面试题 与Python Web相关
Jan 14 Python
python二分查找算法的递归实现方法
May 12 Python
Python自定义类的数组排序实现代码
Aug 28 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
Aug 05 Python
详解Python3.6安装psutil模块和功能简介
May 30 Python
python实现Zabbix-API监控
Sep 17 Python
解决pycharm 远程调试 上传 helpers 卡住的问题
Jun 27 Python
Python实现打印实心和空心菱形
Nov 23 Python
python高级特性简介
Aug 13 Python
Python 调用 ES、Solr、Phoenix的示例代码
Nov 23 Python
Python中tkinter的用户登录管理的实现
Apr 22 Python
Python获取指定日期是"星期几"的6种方法
Mar 13 Python
python SVD压缩图像的实现代码
Nov 05 #Python
Django REST框架创建一个简单的Api实例讲解
Nov 05 #Python
python中for循环变量作用域及用法详解
Nov 05 #Python
Python对Excel按列值筛选并拆分表格到多个文件的代码
Nov 05 #Python
pytorch torch.expand和torch.repeat的区别详解
Nov 05 #Python
Python socket模块ftp传输文件过程解析
Nov 05 #Python
python3.6、opencv安装环境搭建过程(图文教程)
Nov 05 #Python
You might like
Oracle 常见问题解答
2006/10/09 PHP
php操作redis中的hash和zset类型数据的方法和代码例子
2014/07/05 PHP
推荐一款PHP+jQuery制作的列表分页的功能模块
2014/10/14 PHP
Ajax+Jpgraph实现的动态折线图功能示例
2019/02/11 PHP
php 多个变量指向同一个引用($b = &$a)用法分析
2019/11/13 PHP
IE6不能修改NAME问题的解决方法
2010/09/03 Javascript
jquery 倒计时效果实现秒杀思路
2013/09/11 Javascript
12行javascript代码绘制一个八卦图
2015/04/02 Javascript
浅谈JavaScript中的Math.atan()方法的使用
2015/06/14 Javascript
js模仿php中strtotime()与date()函数实现方法
2015/08/11 Javascript
jQuery中on绑定事件后引发的事件冒泡问题如何解决
2016/05/25 Javascript
jQuery实现的购物车物品数量加减功能代码
2016/11/16 Javascript
基于JavaScript实现本地图片预览
2017/02/08 Javascript
Angular.js初始化之ng-app的自动绑定与手动绑定详解
2017/07/31 Javascript
jquery animate动画持续运动的实例
2017/11/29 jQuery
纯javascript前端实现base64图片下载(兼容IE10+)
2018/09/14 Javascript
利用Vconsole和Fillder进行移动端抓包调试方法
2019/03/05 Javascript
Vue2.0实现简单分页及跳转效果
2019/07/29 Javascript
JS使用setInterval计时器实现挑战10秒
2020/11/08 Javascript
Vue如何实现变量表达式选择器
2021/02/18 Vue.js
[01:08]DOTA2次级职业联赛 - Shield战队宣传片
2014/12/01 DOTA
[04:26]DOTA2上海特锦赛小组赛第二日 TOP10精彩集锦
2016/02/27 DOTA
Python 编码处理-str与Unicode的区别
2016/09/06 Python
TensorFlow在MAC环境下的安装及环境搭建
2017/11/14 Python
django用户注册、登录、注销和用户扩展的示例
2018/03/19 Python
python实现石头剪刀布小游戏
2021/01/20 Python
Python英文文章词频统计(14份剑桥真题词频统计)
2019/10/13 Python
如何给HTML标签中的文本设置修饰线
2019/11/18 HTML / CSS
驴妈妈旅游网:中国新型的B2C旅游电子商务网站
2016/08/16 全球购物
美国美食礼品篮网站:Gourmet Gift Baskets
2019/12/15 全球购物
幼儿园教师的考核评语
2014/04/18 职场文书
新疆民族团结演讲稿
2014/08/27 职场文书
大学生助学金感谢信
2015/01/21 职场文书
三峡导游词
2015/01/31 职场文书
欠款证明
2015/06/24 职场文书
幼儿园开学家长寄语(2016秋季)
2015/12/03 职场文书