40 lines
1.0 KiB
Python
40 lines
1.0 KiB
Python
from flask import *
|
|
from flask_httpauth import HTTPTokenAuth
|
|
from Article import load_freq_history
|
|
from wordfreqCMD import sort_in_descending_order
|
|
import pickle_idea
|
|
|
|
auth = HTTPTokenAuth(scheme='Bearer')
|
|
|
|
path_prefix = '/var/www/wordfreq/wordfreq/'
|
|
path_prefix = './' # comment this line in deployment
|
|
|
|
show_bp = Blueprint(
|
|
'site',
|
|
__name__,
|
|
)
|
|
|
|
tokens = {
|
|
"token": "token"
|
|
}
|
|
|
|
|
|
@auth.verify_token
|
|
def verify_token(token):
|
|
if token in tokens:
|
|
return tokens[token]
|
|
|
|
|
|
@show_bp.route('/show/<name>/') # set route for show page <name> means the var name to search
|
|
@auth.login_required
|
|
def show(name):
|
|
user_freq_record = path_prefix + 'static/frequency/' + 'frequency_%s.pickle' % (name)
|
|
d = load_freq_history(user_freq_record)
|
|
freqlst = sort_in_descending_order(pickle_idea.dict2lst(d))
|
|
words_freq = [] # 存储单词表的数组,格式为 单词-词频
|
|
for i in range(len(freqlst)):
|
|
words_freq.append(str(freqlst[i][0]) + "-" + str(len(freqlst[i][1])))
|
|
t = {}
|
|
t[name] = words_freq
|
|
return jsonify(t)
|