Commit f734f713 authored by 李明杰's avatar 李明杰

Delete run.py

parent 9730a1f7
# -*- coding: utf-8 -*-
# author:Li Mingjie time:2019/3/9
# Brief:
import domain_structure_analysis as DS
import time_series_analysis as TS
import user_portrait_analysis as UP
import chat_function_analysis as CF
import response_time_analysis as RT
import response_error_analysis as RE
import second_test as ST
import json
from flask import Flask, render_template
from flask import request
from flask_cors import CORS
from flask_caching import Cache
import time
import base64
import random
app = Flask(__name__)
CORS(app, supports_credentials=True)
# cache = Cache(app, config={'CACHE_TYPE': 'simple'})
print("*****datetime:")
now_time = time.strftime("%b %d %Y %H:%M:%S", time.localtime(time.time()))
print(now_time)
print("*****\n")
users = {
"admin": "spdas!23"
}
def gen_token(uid):
token = base64.b64encode((':'.join([str(uid), str(random.random()), str(now_time)])).encode('utf-8'))
print("BASE64加密串:\n" + str(token, 'utf-8'))
# users[uid].append(token)
return token
@app.route('/SPDAS', methods=['GET'])
def index():
return render_template('index.html')
@app.route('/SPDAS/login', methods=['POST'])
def login():
data = request.get_data()
json_re = json.loads(data)
username = json_re['user']
password = json_re['password']
if username in users.keys() and password == users[username]:
return gen_token(username)
# gen_token(username)
#return 'yes'
else:
return "error"
@app.route('/SPDAS/domain_structure_analysis1', methods=['POST'])
def domain():
param = ({"data_type": [{"value": "control"}, {"value": "application"}, {"value": "all"}],
"time": "2019-01-01 00:00:00/2019-01-02 00:00:00",
"graph_type": [{"value": "bar"}, {"value": "pie"}],
"image_path": "http://120.79.171.145:8000/plot_domain1.jpg"})
return json.JSONEncoder().encode(param)
@app.route('/SPDAS/domain_structure_analysis2', methods=['POST'])
def domain_form():
# 需要从request对象读取表单内容:
data = request.get_data()
json_re = json.loads(data)
print(json_re)
datatype = json_re['data_type']
m_time = json_re['time']
graphtype = json_re['graph_type']
str_time = str(m_time)
m_time = str_time.split('/')
starttime = m_time[0]
endtime = m_time[1]
image_path = DS.data_statistics_plot(datatype=datatype, starttime=starttime, endtime=endtime, graphtype=graphtype)
path = ({"domain_image": image_path})
return json.JSONEncoder().encode(path)
@app.route('/SPDAS/time_series_analysis1', methods=['POST'])
def time():
param = ({"time_type": [{"value": "hour", "id": 1}, {"value": "day", "id": 2},
{"value": "month", "id": 3}, {"value": "year", "id": 4}],
"time": "2019-01-01 00:00:00/2019-01-02 00:00:00",
"graph_type": [{"value": "bar"}, {"value": "pie"}],
"image_path": "http://120.79.171.145:8000/plot_time1.jpg"})
return json.JSONEncoder().encode(param)
@app.route('/SPDAS/time_series_analysis2', methods=['POST'])
def time_form():
# 需要从request对象读取表单内容:
data = request.get_data()
json_re = json.loads(data)
print(json_re)
timetype = json_re['time_type']
m_time = json_re['time']
graphtype = json_re['graph_type']
str_time = str(m_time)
m_time = str_time.split('/')
starttime = m_time[0]
endtime = m_time[1]
image_path = TS.datetime_data_plot(timetype=timetype, starttime=starttime, endtime=endtime, graphtype=graphtype)
path = ({"time_image": image_path})
return json.JSONEncoder().encode(path)
@app.route('/SPDAS/user_portrait_analysis1', methods=['POST'])
def user():
param = ({"data_type": [{"value": "control"}, {"value": "application"}, {"value": "chat"}, {"value": "all"}],
"time": "2019-01-01 00:00:00/2019-01-02 00:00:00",
"image_path": "http://120.79.171.145:8000/plot_user1.jpg"})
return json.JSONEncoder().encode(param)
@app.route('/SPDAS/user_portrait_analysis2', methods=['POST'])
def user_form():
# 需要从request对象读取表单内容:
data = request.get_data()
json_re = json.loads(data)
print(json_re)
datatype = json_re['data_type']
m_time = json_re['time']
str_time = str(m_time)
m_time = str_time.split('/')
starttime = m_time[0]
endtime = m_time[1]
image_path = UP.portrait_plot(datatype=datatype, starttime=starttime, endtime=endtime)
path = {"user_image": image_path}
return json.JSONEncoder().encode(path)
@app.route('/SPDAS/chat_function_analysis/choice1', methods=['POST'])
def choice():
param = (
{"time": "2018-12-01 00:00:00/2018-12-28 20:00:00", "image_path": "http://120.79.171.145:8000/choice_num1.jpg"})
return json.JSONEncoder().encode(param)
@app.route('/SPDAS/chat_function_analysis/choice2', methods=['POST'])
# @cache.cached(timeout=60 * 30, key_prefix='choice_form')
def choice_form():
# 需要从request对象读取表单内容:
data = request.get_data()
json_re = json.loads(data)
print(json_re)
m_time = json_re['time']
str_time = str(m_time)
m_time = str_time.split('/')
starttime = m_time[0]
endtime = m_time[1]
data_cluster = CF.Culter(start_time=starttime, end_time=endtime)
data_cluster.feature_extraction_data()
image_path = data_cluster.k_means(data_cluster.feature_matrix)
path = ({"num_image": image_path})
return json.JSONEncoder().encode(path)
@app.route('/SPDAS/chat_function_analysis/chat1', methods=['POST'])
def chat():
param = ({"time": "2018-12-01 00:00:00/2018-12-28 20:00:00", "best_num": "1",
"image1_path": "http://120.79.171.145:8000/hierachical_clusters1.jpg",
"image2_path": "http://120.79.171.145:8000/cluster_point1.jpg"})
return json.JSONEncoder().encode(param)
@app.route('/SPDAS/chat_function_analysis/chat2', methods=['POST'])
def chat_form():
# 需要从request对象读取表单内容:
data = request.get_data()
json_re = json.loads(data)
m_time = json_re['time']
str_time = str(m_time)
m_time = str_time.split('/')
starttime = m_time[0]
endtime = m_time[1]
data_cluster = CF.Culter(start_time=starttime, end_time=endtime)
data_cluster.feature_extraction_data()
image_path = data_cluster.k_means(data_cluster.feature_matrix)
charnum = json_re['best_num']
bestnum = int(charnum)
print(bestnum)
image_path1 = data_cluster.k_means_cluster(best_num=bestnum)
linkage_matrix = data_cluster.ward_hierarchical_clustering(data_cluster.feature_matrix)
image_path2 = data_cluster.plot_hierarchical_clusters(linkage_matrix=linkage_matrix, m_data=data_cluster.chat_data,
figure_size=(35, 40))
with open("/roobo/soft/phpmyadmin/chat_function_data.txt", 'w') as file:
file.writelines(data_cluster.out_data)
path = ({"cluster_point": image_path2, "ward_image": image_path1})
return json.JSONEncoder().encode(path)
@app.route('/SPDAS/response_analysis1', methods=['POST'])
def response():
param = ({"data_type": [{"value": "control"}, {"value": "application"}, {"value": "all"}],
"effect_type": [{"value": "cost_time"}, {"value": "response_error"}],
"time": "2019-01-01 00:00:00/2019-01-02 00:00:00",
"image_path": "http://120.79.171.145:8000/response_time1.jpg"})
return json.JSONEncoder().encode(param)
@app.route('/SPDAS/response_analysis2', methods=['POST'])
def response_form():
# 需要从request对象读取表单内容:
data = request.get_data()
json_re = json.loads(data)
print(json_re)
datatype = json_re['data_type']
effecttype = json_re['effect_type']
m_time = json_re['time']
str_time = str(m_time)
m_time = str_time.split('/')
starttime = m_time[0]
endtime = m_time[1]
if effecttype == 'cost_time':
image_path = RT.cost_time_plot(datatype=datatype, starttime=starttime, endtime=endtime)
else:
image_path = RE.error_data_statistics_plot(datatype=datatype, starttime=starttime, endtime=endtime,
graphtype='bar')
path = ({"response_image": image_path})
print(image_path)
return json.JSONEncoder().encode(path)
@app.route('/SPDAS/second_test1', methods=['POST'])
def second():
param = ({"data_type": [{"value": "error_control"}, {"value": "error_application"}],
"time": "2019-01-01 00:00:00/2019-01-02 00:00:00",
"graph_type": [{"value": "bar"}, {"value": "pie"}],
"image_path": "http://120.79.171.145:8000/response_error1.jpg"})
return json.JSONEncoder().encode(param)
@app.route('/SPDAS/second_test2', methods=['POST'])
def second_form():
# 需要从request对象读取表单内容:
data = request.get_data()
json_re = json.loads(data)
print(json_re)
datatype = json_re['data_type']
m_time = json_re['time']
str_time = str(m_time)
m_time = str_time.split('/')
starttime = m_time[0]
endtime = m_time[1]
graphtype = json_re['graph_type']
image_path = ST.second_test_plot(datatype=datatype, starttime=starttime, endtime=endtime, graphtype=graphtype)
path = ({"test_image": image_path})
return json.JSONEncoder().encode(path)
if __name__ == '__main__':
app.run(debug=True, host='10.7.19.129', port=5000)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment