• ARL资产灯塔系统分组资产导出脚本


    导出某一组资产,如图

    因为某一组的资产没有导出的功能,所以自写了一个半自动导出脚本

    半自动是因为需要自己填写token等信息,代码如下:

    import requests
    
    HOST=""
    TOKEN=""
    PAGENUM=34
    scope_id=''
    
    headers={
        "Host": HOST,
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:83.0) Gecko/20100101 Firefox/83.0",
        "Accept": "application/json, text/plain, */*",
        "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2",
        "token": TOKEN,
        "Connection": "close"
    }
    sitepool=set()
    def getContent(url):
        try:
            rep=requests.get(url=url,headers=headers)
            urllist=eval(rep.text)["items"]
            for url in urllist:
                site=url['site']
                print(site)
                sitepool.add(site)
        except Exception as e :
            print(e)
            pass
        return
    
    def Save():
        filename = 'AAA.txt'
        with open(filename, 'a+') as f:
            while len(sitepool)!=0:
                line=sitepool.pop()
                f.write("{}
    ".format(line))
    
    def main():
        for i in range(1,PAGENUM):
            url='http://{}/api/asset_site/?page={}&size=10&scope_id={}'.format(HOST,i,scope_id)
            getContent(url)
        print(len(sitepool))
        Save()
        return
    
    if __name__ == '__main__':
        main()
    

    需要自己填充的信息为全局变量部分

    HOST=""
    TOKEN=""
    PAGENUM=34
    scope_id=''
    

    简单解释一下,HOST为搭建资产灯塔系统的URL,比如:127.0.0.1:5003,TOKEN为每次登录时的凭证信息,F12查看网络信息可以获取到,PAGENUM是分组资产的页数,如图:

    所以这里填写34

    scope_id是资产分组后的ID,点击分组资产后在URL中可以看到:

    将这四个参数填写后运行即可导出结果,结果保存在AAA.txt

  • 相关阅读:
    TypesScript+Webpack
    TypeScript 类型
    git操作
    kafka
    java: cannot find symbol symbol: variable log
    Angular结构型指令,模块和样式
    Angular 自定义拖拽指令
    Angular changeDetction
    Angular 依赖注入
    RXJS Observable的冷,热和Subject
  • 原文地址:https://www.cnblogs.com/Cl0ud/p/14175724.html
Copyright © 2020-2023  润新知