前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >高防api接口查询

高防api接口查询

作者头像
以谁为师
发布2019-05-31 20:40:53
2.2K0
发布2019-05-31 20:40:53
举报

机房高防平台api查询接口

代码语言:javascript
复制
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# --------------------------------------
# Author:  LJ
# Email:   admin@attacker.club

# Last Modified: 2018-06-19 21:33:43
# Description:
# --------------------------------------
import requests
import sys
import json
import datetime
import pprint


from requests.packages.urllib3.exceptions import InsecureRequestWarning
# 禁用安全请求警告
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)


def GetToken(Userid, Secret):
    Url = "https://cloud.gttxidc.com/xddos/public/authorize"
    Data = {
        "appId": Userid,
        "secretKey": Secret
    }
    r = requests.get(url=Url, params=Data, verify=False)
    return r.json()


def GetAttack(ip, begin, end):
    Url = "https://cloud.gttxidc.com/xddos/public/attacks"
    headers = {
        "Authorization": Token,
    }
    Data = {
        "ipList": ip,
        "beginDate": begin,
        "endDate": end
    }

    r = requests.get(url=Url, params=Data, headers=headers, verify=False)

    Attack_data = r.json()['result']['data']
    attack_dict = {}
    if len(Attack_data) > 0:
        for each_ip in Attack_data:
            attacks = each_ip['attacks']
            for attack in attacks:
                attack['startTime'] = datetime.datetime.fromtimestamp(
                    attack['startTime']).strftime("%Y/%m/%d %H:%M:%S")
                attack['endTime'] = datetime.datetime.fromtimestamp(
                    attack['endTime']).strftime("%Y/%m/%d %H:%M:%S")
                print(each_ip['ip'], "===============")
                pprint.pprint(attack, indent=3)
    else:
        print ("no attack")


def GetBlackHole(ip):
    Url = "https://cloud.gttxidc.com/xddos/public/blackHoleStatus"
    headers = {
        "Authorization": Token,
    }
    Data = {
        "ipList": ip,
    }

    r = requests.get(url=Url, params=Data, headers=headers, verify=False)

    BlackHole_data = r.json()['result']['data']
    if len(BlackHole_data) > 0:
        print("BlackHole IP:===============\n")
        print(BlackHole_data)

    else:
        print ("no BlackHole")


if __name__ == '__main__':
    now = datetime.datetime.now()  # 当前时间
    min = now - datetime.timedelta(minutes=300)  # 30分钟前

    beginDate = min.strftime('%Y%m%d%H%M%S')
    endDate = now.strftime('%Y%m%d%H%M%S')  # 3分钟一次查询

    #beginDate = "20180619221500"
    #endDate =   "20180621152000"

    appId = "1395817xxx"  # 账户
    secretKey = "xxx"  # Secret凭证密钥
    ipList = "36.27.209.xx"

    Token_json = GetToken(appId, secretKey)
    Token = Token_json['result']['Authorization']
    print(Token)

    #Attack_json = GetAttack(ipList, beginDate, endDate)
    #Attack_data = Attack_json['result']['data']

    GetAttack(ipList, beginDate, endDate)


    GetBlackHole(ipList)
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年6月19日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 机房高防平台api查询接口
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档