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 getopt模块处理命令行选项实例
May 13 Python
Python中编写ORM框架的入门指引
Apr 29 Python
使用Python的Django框架结合jQuery实现AJAX购物车页面
Apr 11 Python
python爬虫入门教程--正则表达式完全指南(五)
May 25 Python
Python基于递归算法实现的走迷宫问题
Aug 04 Python
Python中矩阵库Numpy基本操作详解
Nov 21 Python
Python用户推荐系统曼哈顿算法实现完整代码
Dec 01 Python
python实现excel读写数据
Mar 02 Python
详谈Python中列表list,元祖tuple和numpy中的array区别
Apr 18 Python
python之pymysql模块简单应用示例代码
Dec 16 Python
如何使用python代码操作git代码
Feb 29 Python
Python字符串查找基本操作代码案例
Oct 27 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
Email+URL的判断和自动转换函数
2006/10/09 PHP
ThinkPHP CURD方法之where方法详解
2014/06/18 PHP
详解WordPress开发中get_header()获取头部函数的用法
2016/01/08 PHP
用javascript实现给图片加链接
2007/08/15 Javascript
一个简单的jQuery插件制作 学习过程及实例
2010/04/25 Javascript
jQuery的实现原理的模拟代码 -5 Ajax
2010/08/07 Javascript
基于MVC3方式实现下拉列表联动(JQuery)
2013/09/02 Javascript
JavaScript程序员应该知道的45个实用技巧
2014/03/04 Javascript
jQuery学习笔记之jQuery原型属性和方法
2014/06/09 Javascript
jQuery表格列宽可拖拽改变且兼容firfox
2014/09/03 Javascript
node.js中的定时器nextTick()和setImmediate()区别分析
2014/11/26 Javascript
简单分析javascript面向对象与原型
2015/05/21 Javascript
Bootstrap框架下下拉框select搜索功能
2020/03/26 Javascript
史上最全JavaScript常用的简写技巧(推荐)
2017/08/17 Javascript
node.js中fs文件系统目录操作与文件信息操作
2018/02/24 Javascript
AngularJS与BootStrap模仿百度分页的示例代码
2018/05/23 Javascript
详解vue beforeEach 死循环问题解决方法
2020/02/25 Javascript
[01:05:12]2014 DOTA2国际邀请赛中国区预选赛 TongFu VS CIS-GAME
2014/05/21 DOTA
[01:00:14]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第三场
2018/04/10 DOTA
[58:35]OG vs EG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.22
2019/09/05 DOTA
python调用Moxa PCOMM Lite通过串口Ymodem协议实现发送文件
2014/08/15 Python
使用python生成杨辉三角形的示例代码
2018/08/29 Python
python之信息加密题目详解
2019/06/26 Python
python自动化测试之DDT数据驱动的实现代码
2019/07/23 Python
pytorch 归一化与反归一化实例
2019/12/31 Python
python实现从ftp上下载文件的实例方法
2020/07/19 Python
python3.8动态人脸识别的实现示例
2020/09/21 Python
matplotlib绘制鼠标的十字光标的实现(内置方式)
2021/01/06 Python
Java的基础面试题附答案
2016/01/10 面试题
如何找出EMP表里面SALARY第N高的employee
2013/12/05 面试题
财务工作失职检讨书
2014/11/21 职场文书
行政主管岗位职责
2015/02/03 职场文书
《黄道婆》教学反思
2016/02/22 职场文书
2019年朋友圈经典励志语录50条
2019/07/05 职场文书
python 模块重载的五种方法
2021/04/24 Python
iOS 16进一步确认,一共支持16款iPhone
2022/04/28 数码科技