| 
														
															@@ -1,6 +1,7 @@ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 """ 
														 | 
														
														 | 
														
															 """ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 @author: luojunhui 
														 | 
														
														 | 
														
															 @author: luojunhui 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 """ 
														 | 
														
														 | 
														
															 """ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 from applications.functions import ArticleRank 
														 | 
														
														 | 
														
															 from applications.functions import ArticleRank 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 from applications.functions import title_sim_v2_by_list 
														 | 
														
														 | 
														
															 from applications.functions import title_sim_v2_by_list 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 from applications.functions import get_article_title_url_list 
														 | 
														
														 | 
														
															 from applications.functions import get_article_title_url_list 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -22,6 +23,7 @@ def has_same(title, account_nickname): 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         return True 
														 | 
														
														 | 
														
															         return True 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     return False 
														 | 
														
														 | 
														
															     return False 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 class AccountArticleRank(object): 
														 | 
														
														 | 
														
															 class AccountArticleRank(object): 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     """ 
														 | 
														
														 | 
														
															     """ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     文章排序 
														 | 
														
														 | 
														
															     文章排序 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -47,20 +49,20 @@ class AccountArticleRank(object): 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         :return: 
														 | 
														
														 | 
														
															         :return: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         """ 
														 | 
														
														 | 
														
															         """ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         try: 
														 | 
														
														 | 
														
															         try: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            self.accountId = self.params['accountId'] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            self.accountName = self.params['accountName'] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            self.ghId = self.params['ghId'] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            self.strategy = self.params['strategy'] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            self.publishNum = self.params['publishNum'] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            self.publishArticleList = self.params['publishArticleList'] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            self.title_list = [i['title'] for i in self.publishArticleList] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            self.content_list = [i['content'] for i in self.publishArticleList] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            self.accountId = self.params["accountId"] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            self.accountName = self.params["accountName"] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            self.ghId = self.params["ghId"] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            self.strategy = self.params["strategy"] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            self.publishNum = self.params["publishNum"] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            self.publishArticleList = self.params["publishArticleList"] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            self.title_list = [i["title"] for i in self.publishArticleList] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            self.content_list = [i["content"] for i in self.publishArticleList] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             return None 
														 | 
														
														 | 
														
															             return None 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         except Exception as e: 
														 | 
														
														 | 
														
															         except Exception as e: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             response = { 
														 | 
														
														 | 
														
															             response = { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "msg": "params error", 
														 | 
														
														 | 
														
															                 "msg": "params error", 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "info": "params check failed, params : {} is not correct".format(e), 
														 | 
														
														 | 
														
															                 "info": "params check failed, params : {} is not correct".format(e), 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                "code": 0 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                "code": 0, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             } 
														 | 
														
														 | 
														
															             } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             return response 
														 | 
														
														 | 
														
															             return response 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -70,24 +72,35 @@ class AccountArticleRank(object): 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         :return: 
														 | 
														
														 | 
														
															         :return: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         """ 
														 | 
														
														 | 
														
															         """ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         try: 
														 | 
														
														 | 
														
															         try: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            rank_info = ArticleRank().rank(account_list=[self.accountName], text_list=self.title_list) 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            score_list = rank_info[self.accountName]['score_list'] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            rank_info = ArticleRank().rank( 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                account_list=[self.accountName], text_list=self.title_list 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            ) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            score_list = rank_info[self.accountName]["score_list"] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             title_score_dict = {} 
														 | 
														
														 | 
														
															             title_score_dict = {} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             for index, item in enumerate(self.title_list): 
														 | 
														
														 | 
														
															             for index, item in enumerate(self.title_list): 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 title_score_dict[item] = score_list[index] 
														 | 
														
														 | 
														
															                 title_score_dict[item] = score_list[index] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             result_list = [] 
														 | 
														
														 | 
														
															             result_list = [] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             for obj in self.publishArticleList: 
														 | 
														
														 | 
														
															             for obj in self.publishArticleList: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                if title_score_dict.get(obj['title']): 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                    obj['score'] = title_score_dict[obj['title']] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                if title_score_dict.get(obj["title"]): 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    produce_plan_name = obj['producePlanName'] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    if "【1】" in produce_plan_name: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        obj["score"] = title_score_dict[obj["title"]] + 1000 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    elif "【2】" in produce_plan_name: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        obj["score"] = title_score_dict[obj["title"]] + 100 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    else: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                        obj["score"] = title_score_dict[obj["title"]] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                     result_list.append(obj) 
														 | 
														
														 | 
														
															                     result_list.append(obj) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            sorted_list = sorted(result_list, key=lambda x: x['score'], reverse=True) 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            sorted_list = sorted(result_list, key=lambda x: x["score"], reverse=True) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             result = { 
														 | 
														
														 | 
														
															             result = { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "accountId": self.accountId, 
														 | 
														
														 | 
														
															                 "accountId": self.accountId, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "accountName": self.accountName, 
														 | 
														
														 | 
														
															                 "accountName": self.accountName, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "ghId": self.ghId, 
														 | 
														
														 | 
														
															                 "ghId": self.ghId, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "strategy": self.strategy, 
														 | 
														
														 | 
														
															                 "strategy": self.strategy, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "publishNum": self.publishNum, 
														 | 
														
														 | 
														
															                 "publishNum": self.publishNum, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                "rank_list": sorted_list[:self.publishNum] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                "rank_list": sorted_list[: self.publishNum], 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             } 
														 | 
														
														 | 
														
															             } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         except Exception as e: 
														 | 
														
														 | 
														
															         except Exception as e: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             result = { 
														 | 
														
														 | 
														
															             result = { 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -96,13 +109,9 @@ class AccountArticleRank(object): 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "ghId": self.ghId, 
														 | 
														
														 | 
														
															                 "ghId": self.ghId, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "strategy": self.strategy, 
														 | 
														
														 | 
														
															                 "strategy": self.strategy, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 "publishNum": self.publishNum, 
														 | 
														
														 | 
														
															                 "publishNum": self.publishNum, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                "rank_list": self.publishArticleList[:self.publishNum] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                "rank_list": self.publishArticleList[: self.publishNum], 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             } 
														 | 
														
														 | 
														
															             } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        response = { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            "status": "Rank Success", 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            "data": result, 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            "code": 1 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        } 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        response = {"status": "Rank Success", "data": result, "code": 1} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         return response 
														 | 
														
														 | 
														
															         return response 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     async def rank_v2(self): 
														 | 
														
														 | 
														
															     async def rank_v2(self): 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -160,11 +169,10 @@ class AccountArticleRank(object): 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             return error_params 
														 | 
														
														 | 
														
															             return error_params 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         else: 
														 | 
														
														 | 
														
															         else: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             try: 
														 | 
														
														 | 
														
															             try: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                self.title_list = [i for i in self.title_list if not has_same(i, self.accountName)] 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                self.title_list = [ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    i for i in self.title_list if not has_same(i, self.accountName) 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                ] 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 return await self.choose_strategy() 
														 | 
														
														 | 
														
															                 return await self.choose_strategy() 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             except Exception as e: 
														 | 
														
														 | 
														
															             except Exception as e: 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                result = { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                    "code": 2, 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                    "info": "account is not exist" 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                } 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                result = {"code": 2, "info": "account is not exist"} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 return result 
														 | 
														
														 | 
														
															                 return result 
														 |