swaggerApi.py 1.11 KB
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/7/19 下午2:45
# @Author : 付孟奇

import os
import requests
from util.HandleJson import file_write
from config.vendorPath import api_path
from config.vendorHost import vendor_host


class SwaggerApi:
    def __init__(self):
        self.host = vendor_host
        self.api_type = {}
        url_type = ['re', 'cl', 'qa', 'sys']
        for i in url_type:
            self.api_msg = {}
            swagger_url = os.path.join(os.path.join(self.host, i), 'v2/api-docs')
            res_api = requests.get(swagger_url).json()
            data_paths = res_api['paths']  # 获取swagger中所有接口的信息
            self.api_type[i] = self.api_msg
            for k, v in data_paths.items():
                self.api_msg_v = {}
                for _k, _v in v.items():
                    self.api_msg_v['des'] = _v['summary']
                    self.api_msg_v['value'] = str(k)
                    self.api_msg[_v['operationId']] = self.api_msg_v
            file_write(api_path, self.api_type)


swaggerApi = SwaggerApi()
if __name__ == '__main__':
    swaggerApi