zoukankan      html  css  js  c++  java
  • Python监控网站接口值

    Python监控网站接口值:

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    __author__ = 'liudong'
    
    import urllib,sys,urllib2,json,smtplib
    from email.mime.text import MIMEText
    
    mailto_list=['邮箱']
    mail_host="smtp.philisense.com"
    mail_user="邮箱"
    mail_pass="邮箱密码"
    mail_postfix="philisense.com"
    
    def send_mail(to_list,sub,content):
         me="hello"+"<"+mail_user+"@"+mail_postfix+">"
         msg = MIMEText(content,_subtype='plain')
         msg['Subject'] = sub
         msg['From'] = me
         msg['To'] = ";".join(to_list)
         try:
             server = smtplib.SMTP(mail_host,25)
             server.set_debuglevel(1)
             server.login(mail_user,mail_pass)
             server.sendmail(me, to_list, msg.as_string())
             server.close()
         except :
             return False
    #把 接口:参数,以(key :value)写成字典的方式
    api_host ={"http://back.oursdata.com/jppt/jp-index-data/hours-data":{"appid":"1,2,3,4",
            "indexType":"node_activeness_count",
            "dateType":"month",
            "startDate":"2016/6/25",
            "endDate":"2016/12/21"},
            "http://back.oursdata.com/jppt/jp-index-data/avg-day":{"appid":"1, 2, 3, 4, 5",
            "indexType":"active_avg",
            "dateType":"week",
            "_csrf":"Q2lwdWd0ekQaXkgANEEDMy89RVgORzsLJAs4MgVMKBYiOy8aBgZMCA=="}
            }
    #给函数定义两个参数
    def interfaceTest(api_url,parameter):
        params = urllib.urlencode(parameter)
        headers = {"Content-type": "application/x-www-form-urlencoded; charset=UTF-8"}
        req = urllib2.Request(url=api_url, data=params, headers=headers)
        response = urllib2.urlopen(req)
        a = json.loads(response.read())
        if a["err"] == "ok":
            if len(a["data"]) == 0:
                send_mail(mailto_list,'data',k + '
    ' 'The data is None!!!')
        else:
            send_mail(mailto_list, 'err','"err" not equal to "ok"')
    
    if __name__ == "__main__":
        for (k,v) in api_host.items():
            interfaceTest(k,v)   #给函数传参
  • 相关阅读:
    20200323 Go语言基础
    20200313 图表工具与redis使用
    20200312 CMDB的磁盘数据查询
    20200311 CMDB的表设计
    20200320 代码发布之完结
    20200319 代码发布之任务发布钩子脚本
    Ubuntu 安装 MySQL 服务
    使用U盘重装系统(删除掉系统自带的Windows 10)
    Linux & Windows 上安装 Qt
    初次使用Tampermonkey脚本管理器
  • 原文地址:https://www.cnblogs.com/liuyansheng/p/6215122.html
Copyright © 2011-2022 走看看