server端:
flask web服务器,接受请求返回数据
from flask import Flask,render_template,request
from mysql import MySql
import time
import datetime
import random
import json
app = Flask(__name__)
def get_data_buyer(sql):
mysql = MySql()
datas = mysql.query_data(sql)
return parse_data_from_db(datas, 'ts', 'buyer')
def get_data_seller(sql):
mysql = MySql()
datas = mysql.query_data(sql)
return parse_data_from_db(datas, 'ts', 'seller')
def get_data_user(sql):
mysql = MySql()
datas = mysql.query_data(sql)
return parse_data_from_db(datas, 'ts', 'login_user')
def _datetime2timestamp(dt):
date_format = "%Y-%m-%d %H:%M:%S"
return time.mktime(time.strptime(str(dt), date_format))
def _timestamp2datetime(ts):
date_format = "%Y-%m-%d %H:%M:%S"
return time.strftime(date_format, time.localtime(ts))
def parse_data_from_db(data, field_ts=None, field_other=None):
if len(data) == 0:
return [], None
results = []
max_time = 0.0
for item in data:
temp = []
ts = _datetime2timestamp(item.get(field_ts))
temp.append(ts * 1000)
if field_other == 'login_user':
temp.append(int(item.get(field_other)) / 100)
else:
temp.append(int(item.get(field_other)))
if ts > max_time:
max_time = ts
results.append(temp)
return results, _timestamp2datetime(max_time)
@app.route('/')
def index():
return render_template('MulLine.html')
@app.route('/data')
def data():
if int(request.args.get('max_time_buyer', 0)) == 0:
sql_buyer = "select * from t_buyer"
else:
last_time_buyer = _timestamp2datetime(float(request.args.get('max_time_buyer', 0)) / 1000.0)
sql_buyer = "select * from t_buyer where unix_timestamp(ts) > unix_timestamp(" + '"' + last_time_buyer + '"' + ")"
if int(request.args.get('ma