Compare commits
	
		
			18 Commits 
		
	
	
		
			master
			...
			Bug493-Gon
		
	
	| Author | SHA1 | Date | 
|---|---|---|
|  | 4cf201095d | |
|  | 654fd52c44 | |
|  | a5c792b782 | |
|  | 0549bd9035 | |
|  | 705aa5efcb | |
|  | 61f46f7d58 | |
|  | b9a6e4407e | |
|  | 0962d95ce1 | |
|  | 071d1c968b | |
|  | 68b254f96c | |
|  | 4fb1cad745 | |
|  | 2a553e0f8f | |
|  | 4513a80bdd | |
|  | e73c66edd3 | |
|  | 69835c7f8d | |
|  | 71cc627aad | |
|  | 22775f9797 | |
|  | 9e36644215 | 
|  | @ -180,6 +180,10 @@ Demo video link: https://b23.tv/QuB77m | |||
| 
 | ||||
| Bug report: http://118.25.96.118/bugzilla/show_bug.cgi?id=215 | ||||
| 
 | ||||
| <<<<<<< HEAD | ||||
| 龚科丞    | ||||
| *Last modified on 2021-10-17* | ||||
| ======= | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|  | @ -194,3 +198,4 @@ Bug report: http://118.25.96.118/bugzilla/show_bug.cgi?id=489 | |||
| 
 | ||||
| *Last modified on 2023-01-30* | ||||
| 
 | ||||
| >>>>>>> d9f6df7fbe585395a19b9a08c411d841b6b89fd4 | ||||
|  |  | |||
|  | @ -84,6 +84,10 @@ def mainpage(): | |||
|         content = escape(request.form['content']) | ||||
|         f = WordFreq(content) | ||||
|         lst = f.get_freq() | ||||
|         for i in lst: | ||||
|           if '&' in i[0]: | ||||
|               i[0].replace('&','\'') | ||||
|         #此处由于找不到输出的所以对其输入的格式进行重新规范 | ||||
|         # save history | ||||
|         d = load_freq_history(path_prefix + 'static/frequency/frequency.p') | ||||
|         lst_history = pickle_idea.dict2lst(d) | ||||
|  |  | |||
|  | @ -37,6 +37,16 @@ | |||
| <body> | ||||
| <div class="container-fluid"> | ||||
|     <p><b>English Pal for <font id="username" color="red">{{ username }}</font></b> | ||||
|         <a class="btn btn-secondary" href="/logout" role="button">退出</a> | ||||
|         <a class="btn btn-secondary" href="/reset" role="button">重设密码</a> | ||||
|     </p> | ||||
|     {% if flashed_messages != [] %} | ||||
|         <div class="alert alert-warning" role="alert" id="warn_info"> | ||||
|             {{ flashed_messages|safe }} | ||||
|         </div> | ||||
|     {% endif %} | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|         {% if username ==  admin_name %} | ||||
|         <a class="btn btn-secondary" href="/admin" role="button" onclick="stopRead()">管理</a> | ||||
|  |  | |||
|  | @ -102,8 +102,7 @@ def deleteword(username, word): | |||
|     ''' | ||||
|     user_freq_record = path_prefix + 'static/frequency/' + 'frequency_%s.pickle' % (username) | ||||
|     pickle_idea2.deleteRecord(user_freq_record, word) | ||||
|     # 模板userpage_get.html中删除单词是异步执行,而flash的信息后续是同步执行的,所以注释这段代码;同时如果这里使用flash但不提取信息,则会影响 signup.html的显示。bug复现:删除单词后,点击退出,点击注册,注册页面就会出现提示信息 | ||||
|     # flash(f'{word} is no longer in your word list.') | ||||
|     flash(f'{word} is no longer in your word list.') | ||||
|     return "success" | ||||
| 
 | ||||
| 
 | ||||
|  | @ -151,7 +150,7 @@ def userpage(username): | |||
|                                admin_name=ADMIN_NAME, | ||||
|                                username=username, | ||||
|                                session=session, | ||||
|                                # flashed_messages=get_flashed_messages(), 仅有删除单词的时候使用到flash,而删除单词是异步执行,这里的信息提示是同步执行,所以就没有存在的必要了 | ||||
|                                flashed_messages=get_flashed_messages(), | ||||
|                                today_article=today_article, | ||||
|                                result_of_generate_article=result_of_generate_article, | ||||
|                                d_len=len(d), | ||||
|  | @ -188,3 +187,13 @@ def get_time(): | |||
|     ''' | ||||
|     return datetime.now().strftime('%Y%m%d%H%M')  # upper to minutes | ||||
| 
 | ||||
| def get_flashed_messages_if_any(): | ||||
|     ''' | ||||
|     在用户界面显示黄色提示信息 | ||||
|     :return: 包含HTML标签的提示信息 | ||||
|     ''' | ||||
|     messages = get_flashed_messages | ||||
|     s = '' | ||||
|     for message in messages: | ||||
|         s += message | ||||
|     return s | ||||
|  |  | |||
|  | @ -38,10 +38,36 @@ def file2str(fname):#文件转字符 | |||
|     return s | ||||
| 
 | ||||
| 
 | ||||
| def str2chararray(str):  # 字符串转字符数组 | ||||
|     chararray = [] | ||||
|     for i in range(len(str)): | ||||
|         chararray.append(str[i]) | ||||
|     return chararray | ||||
| 
 | ||||
| 
 | ||||
| def remove_punctuation(s): # 这里是s是形参 (parameter)。函数被调用时才给s赋值。 | ||||
| 
 | ||||
|     # carr = str2chararray(s)  # 字符串转字符数组 | ||||
|     # print(carr) | ||||
|     special_characters = '&_~=+[]%^@.,?!:;#()"“”—‘’|/\\<>{}'  # 把里面的字符都去掉 | ||||
|     special_words = ('$lt', '$gt', '$')  # 特殊词汇 | ||||
| 
 | ||||
|     special_characters = '\_©~<=>+-/[]*&$%^@.,?!:;#()"“”—‘’{}|' # 把里面的字符都去掉 | ||||
| 
 | ||||
|     for c in special_characters: | ||||
|         s = s.replace(c, ' ')  # 防止出现把 apple,apple 移掉逗号后变成 appleapple 情况 | ||||
|     carr = str2chararray(s)  # 字符串转字符数组 | ||||
|     for i, value in enumerate(carr): | ||||
|         if value == '&':  # 遍历替换 | ||||
|             carr[i] = '\'' | ||||
|             print('sss' + s) | ||||
|             for j in range(1,5): | ||||
|                 if carr[i+j] in [' ','3','9']: | ||||
|                     carr[i + j]='' | ||||
|     s = ''.join(carr)  # 字符数组转字符串 | ||||
|     print('sss'+s) | ||||
|     for w in special_words:  # 替换字符串中的剩余特殊字符 | ||||
|         s = s.replace(w, ' ') | ||||
|     s = s.replace('--', ' ') | ||||
|     s = s.strip()  # 去除前后的空格 | ||||
| 
 | ||||
|  | @ -51,7 +77,7 @@ def remove_punctuation(s): # 这里是s是形参 (parameter)。函数被调用 | |||
|         for i in range(n):  # 只有单引号前后都有英文字符,才保留 | ||||
|             if s[i] == '\'': | ||||
|                 i_is_ok = i - 1 >= 0 and i + 1 < n | ||||
|                 if i_is_ok and s[i-1] in string.ascii_letters and s[i+1] in string.ascii_letters: | ||||
|                 if i_is_ok and s[i - 1] in string.ascii_letters and s[i + 1] in string.ascii_letters: | ||||
|                     t += s[i] | ||||
|             else: | ||||
|                 t += s[i] | ||||
|  | @ -60,6 +86,7 @@ def remove_punctuation(s): # 这里是s是形参 (parameter)。函数被调用 | |||
|         return s | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| def sort_in_descending_order(lst):# 单词按频率降序排列 | ||||
|     lst2 = sorted(lst, reverse=True, key=lambda x: (x[1], x[0])) | ||||
|     return lst2 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue