EnglishPal/app/wordCMD.py

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)