117 lines
3.2 KiB
Python
117 lines
3.2 KiB
Python
#!/usr/bin/env python3
|
|
# _*_ coding:utf-8 _*_
|
|
'''
|
|
____ _ _ _ _ __ __ _
|
|
| _ \ __ _| |__ | |__ (_) |_| \/ | __ _ ___| | __
|
|
| |_) / _` | '_ \| '_ \| | __| |\/| |/ _` / __| |/ /
|
|
| _ < (_| | |_) | |_) | | |_| | | | (_| \__ \ <
|
|
|_| \_\__,_|_.__/|_.__/|_|\__|_| |_|\__,_|___/_|\_\
|
|
|
|
'''
|
|
import os
|
|
from importlib import import_module
|
|
from collections import Counter
|
|
|
|
########################################################################################################################
|
|
#pro
|
|
def get_moudle():
|
|
dir = 'Moudle' #pro
|
|
# dir = '../Moudle' #dev
|
|
list=os.listdir(dir)
|
|
moudles=[]
|
|
for i in list:
|
|
if i !='__pycache__':
|
|
path = os.path.join(dir, i)
|
|
if os.path.isdir(path):
|
|
moudles.append(i)
|
|
return moudles
|
|
|
|
def get_payload(moudle):
|
|
dir = 'Moudle/'+moudle #pro
|
|
# dir = '../Moudle/'+moudle #dev
|
|
list = os.listdir(dir)
|
|
payloads = []
|
|
for i in list:
|
|
tmp=[]
|
|
path = os.path.join(dir, i)
|
|
if os.path.isfile(path):
|
|
if '.py' in i:
|
|
payload=i.replace('.py','')
|
|
tmp.append(payload)
|
|
tmp.append(get_remark(moudle,payload))
|
|
payloads.append(tmp)
|
|
return payloads
|
|
|
|
def get_remark(moudle,payload):
|
|
return import_module('Moudle.'+moudle+'.'+payload).REMARK
|
|
|
|
|
|
|
|
|
|
|
|
def Rebuild():
|
|
str=""
|
|
moudles=get_moudle()
|
|
MOUDLE_NUM = len(moudles)
|
|
PAYLOAD_NUM = 0
|
|
for i in moudles:
|
|
str=str+("# {}\n".format(i))
|
|
for j in get_payload(i):
|
|
str=str+("from Moudle.{} import {}\n".format(i,j[0]))
|
|
PAYLOAD_NUM=PAYLOAD_NUM+1
|
|
str=str+("\n")
|
|
NUM="MOUDLE_NUM={}\nPAYLOAD_NUM={}\n\n".format(MOUDLE_NUM,PAYLOAD_NUM)
|
|
f=open('Moudle/Moudle_index.py','w')
|
|
f.write(NUM+str)
|
|
f.close()
|
|
|
|
|
|
########################################################################################################################
|
|
#dev
|
|
def get_moudle_dev():
|
|
# dir = 'Moudle' #pro
|
|
dir = '../Moudle' #dev
|
|
list=os.listdir(dir)
|
|
moudles=[]
|
|
for i in list:
|
|
if i !='__pycache__':
|
|
path = os.path.join(dir, i)
|
|
if os.path.isdir(path):
|
|
moudles.append(i)
|
|
return moudles
|
|
def get_payload_dev(moudle):
|
|
# dir = 'Moudle/'+moudle #pro
|
|
dir = '../Moudle/'+moudle #dev
|
|
list = os.listdir(dir)
|
|
payloads = []
|
|
for i in list:
|
|
tmp=[]
|
|
path = os.path.join(dir, i)
|
|
if os.path.isfile(path):
|
|
if '.py' in i:
|
|
payload=i.replace('.py','')
|
|
tmp.append(payload)
|
|
tmp.append(get_remark(moudle,payload))
|
|
tmp.append(get_author(moudle, payload)) #dev
|
|
payloads.append(tmp)
|
|
return payloads
|
|
|
|
def get_author(moudle,payload):
|
|
return import_module('Moudle.'+moudle+'.'+payload).AUTHOR
|
|
|
|
def Rebuild_dev():
|
|
moudles=get_moudle_dev()
|
|
res=[]
|
|
for i in moudles:
|
|
for j in get_payload_dev(i):
|
|
res.append(j[2])
|
|
dic=Counter(res)
|
|
for key in dic:
|
|
value = dic[key]
|
|
print(key,value)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
# get_moudle()
|
|
# Rebuild()
|
|
Rebuild_dev() |