微信个人告警脚本

微信个人告警:使用个人微信,发送到微信群组,微信好友

两个脚本执行:

1)能连接网络
2)先执行server.py,扫描登录微信,登录之后没有报错,打开新终端查看端口是否起来了
3)在zabbix上面添加报警媒介,将personsend.py 脚本添加进去

4)pip install wxpy wechat_sender -i https://pypi.douban.com/simple

-----------------------------------------------server.py

#-* coding:utf-8
from wechat_sender import *
from wxpy import *
import loggingimport sys
defaultencoding = 'utf-8'
if sys.getdefaultencoding() != defaultencoding:reload(sys)sys.setdefaultencoding(defaultencoding)
bot = Bot(console_qr=True)
group = bot.groups().search(unicode('微信测试'))[0]
#group2 = bot.groups().search(unicode('ITstone'))[0]
logging.basicConfig(level=logging.DEBUG)
#group.send("接入成功!")
#group2.send("接入成功!")
print("微信登陆成功!进行监控报警功能!")
print(group)
listen(bot, token='test', receivers=[group],port=12222)
#listen(bot, token='test2', receivers=[group2],port=15556)

-----------------------------------------------personsend.py 
#!/usr/local/python/bin/python
# -*- coding:UTF-8 -*-
from wechat_sender import *
import time
import sys
defaultencoding = 'utf-8'
if sys.getdefaultencoding() != defaultencoding:reload(sys)sys.setdefaultencoding(defaultencoding)
import ssl
context = ssl._create_unverified_context()
#sender = Sender(token='test2', receivers=unicode('ITstone'),port=15556)
sender2 = Sender(token='test', receivers=unicode('微信测试'),port=15555)    #设置微信群和监听端口
#while True:
#    time.sleep(10)
# sender.send(message=time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))
#    sender.send(message='测试数据'+time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))
messeges=sys.argv[2]+sys.argv[3]
#sender.send(message=messeges)
sender2.send(message=messeges)

                          微信企业号告警脚本

下面的这个微信脚本从网上拉取下来的,后面由于微信更新,修改了倒数第三行的值

import json
import sys
import simplejson
reload(sys)
sys.setdefaultencoding('utf-8')
def gettoken(corpid,corpsecret):gettoken_url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' + corpid + '&corpsecret=' + corpsecretprint  gettoken_urltry:token_file = urllib2.urlopen(gettoken_url)except urllib2.HTTPError as e:print e.codeprint e.read().decode("utf8")sys.exit()token_data = token_file.read().decode('utf-8')token_json = json.loads(token_data)token_json.keys()token = token_json['access_token']return token
def senddata(access_token,user,subject,content,itemid):send_url = 'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=' + access_tokensend_values = {"touser":user,    #企业号中的用户帐号,在zabbix用户Media中配置,如果配置不正常,将按部门发送。"toparty":"2",    #企业号中的部门id。"msgtype":"text", #消息类型。"agentid":"1000002",    #企业号中的应用id。"text":{"content":subject + '\n' + content},"safe":"0"}send_data = simplejson.dumps(send_values, ensure_ascii=False).encode('utf-8')send_request = urllib2.Request(send_url, send_data)response = json.loads(urllib2.urlopen(send_request).read())print str(response)
if __name__ == '__main__':user = str(sys.argv[1])     #zabbix传过来的第一个参数subject = str(sys.argv[2])  #zabbix传过来的第二个参数content = str(sys.argv[3])  #zabbix传过来的第三个参数itemid=1corpid =  'ww22655492448f1e3b'   #CorpID是企业号的标识
#    corpsecret = 'e62ikstjInYq8vAp7mjDmQylO6DlA2a-CH86YpRxd38'  #corpsecretSecret是管理组凭证密钥corpsecret='deH66xl3FZVFhcmKhGfnAHHIlXAOS_Nh76ODn7ZsmU4'    #'这里填写应用对应的secret'accesstoken = gettoken(corpid,corpsecret)senddata(accesstoken,user,subject,content,itemid)

参考:

1)wechat_sender github主页

2)桑心病狂,试试把报警日志发到微信上

3)企业微信开发者文档

zabbix之微信告警(python版):微信个人报警,微信企业号告警脚本相关推荐

  1. 微信支付python版2.0_刷卡支付-翟东平-专题视频课程

    微信支付python版2.0_刷卡支付-244人已学习 课程介绍         微信支付系列课程将讲解"刷卡支付"."扫码支付"."公众号支付&qu ...

  2. 微信java精简版低内存_微信精简版低内存apk-微信精简版2019下载v7.0.6 安卓版-腾牛安卓网...

    微信精简版,去除繁杂的功能,保留最核心的微信通讯.公众号等功能,去除升级永保低内存运行,适合各类高旧手机,使用微信再也不会面临卡顿,内存占用太大等问题了. 版本特性: 1.去除升级 2.去除游戏等各种 ...

  3. 微信有鸿蒙版的的吗,微信鸿蒙版本下载-微信鸿蒙版本下载最新官方版 v7.0.20-游人手游网...

    微信鸿蒙版本是一款让你可以尽情享受到无限聊天乐趣的综合软件,全新的界面体验感,让你每天的社交之中,都能轻松运用,每天都机会认识更多的人,加好友聊天的方式已经在你的内心深深扎入,当然还有一些比较特殊的朋 ...

  4. 微信7.0版本与旧版更新对比 新版微信7.0版更新了什么

    微信7.0版本与旧版更新对比 新版微信7.0版更新了什么 微信发布了最新版微信7.0版本,变化比较大.微信7.0版更新了什么?微信7.0版本与旧版什么区别. 微信7.0版本更新了什么? 微信7.0版本 ...

  5. 适合编程初学者的开源项目:小游戏2048(微信小程序版)

    目标 为编程初学者打造入门学习项目,使用各种主流编程语言来实现. 2048游戏规则 一共16个单元格,初始时由2或者4构成. 1.手指向一个方向滑动,所有格子会向那个方向运动. 2.相同数字的两个格子 ...

  6. 微信小程序版博客——开发汇总总结(附源码)

    花了点时间陆陆续续,拼拼凑凑将我的小程序版博客搭建完了,这里做个简单的分享和总结. 整体效果 对于博客来说功能页面不是很多,且有些限制于后端服务(基于ghost博客提供的服务),相关样式可以参考截图或 ...

  7. 在zabbix中实现发送带有图片的邮件和微信告警

    微信公众号:运维开发故事,作者:double冬 1 python实现在4.2版本zabbix发送带有图片的报警邮件 我们通常收到的报警,都是文字,是把动作中的消息内容当成了正文参数传给脚本,然后邮件或 ...

  8. 微信公众号推送课表及天气(事无巨细+JavaScript版+python版)

    微信公众号推送课表及天气 22.10.16更新 我已经做出来更优秀的直接在聊天列表中推送的了! 请移步 企业微信推送 超强版! 基础 简介 作者:申也 个人网站:申也个人网站(www.dongshen ...

  9. python微信远程控制摄像头_【python版】利用微信远程控制你的电脑

    ============================================================================== 作者:xfkxfk 团队:F4ck Tea ...

最新文章

  1. [转载]jquery 消息插件--仿QQ消息弹出提醒
  2. git push 的符号笔有什么用_Git自救指南(一)——工欲善其事,必先利其器,基本概念概览...
  3. 小米MIX 4要来了?这硬件“堆”的也是没谁了 全是最新技术
  4. cesium 文本标注被遮挡_Cesium-知识点(Viewer)
  5. as 与 is 的区别
  6. flash代码_Flash如何处理常见的代码错误(AS3)(2)
  7. 电脑重装系统记事本打不开提示无法启动此应用程序怎么办
  8. Anaconda 最新版本的下载和安装
  9. 代理 傲澜智伴机器人_机器人厂家_智伴机器人代理,莆田智伴机器人,傲澜智伴机器人(查看)_一呼百应网...
  10. 资本为什么爱“吃面”?
  11. 修改 Mixamo 导出的动画名字
  12. 10.STC15W408AS单片机A/D转换器
  13. Google Earth Engine(GEE)填补缺失影像
  14. 爬取中国票房网的年度票房的电影票房数据
  15. 什么是TCP/IP UDP 详解
  16. Windows7旗舰版桌面整理
  17. 外星人游戏本哪一款好?追求完美体验首选X系列
  18. Windows版微信加密存储图片的解密工具GUI程序
  19. 学习React第三篇:在React组件上设置属性(PropTypes)
  20. 基础——DTE与DCE

热门文章

  1. sql和access中截取字符串的区别
  2. 十九、Android Activity初探
  3. ossec 学习二 (ossec -analogi安装)
  4. .Net中单元测试工具的比较(Moq, VS Fake, TypeMock)
  5. Log4j使用详解(log4j.XML格式)——整理
  6. Exchange 2013 合规性管理之日记规则
  7. js 数据类型和转化
  8. 暗夜ト星ノ冥土馆~ぷにゅぷりXX 汉化补丁
  9. Switcher ---Vista Areo 工具
  10. Cisco PT模拟实验(19) 路由器的NAT功能配置