Browse Source

flowpool add political videos filter

liqian 2 years ago
parent
commit
83ccb8d424
2 changed files with 14 additions and 1 deletions
  1. 6 0
      config.py
  2. 8 1
      pool_predict.py

+ 6 - 0
config.py

@@ -587,6 +587,12 @@ class BaseConfig(object):
     TABLE_POLITICAL_VIDEOS = 'shielded_politics_videolist'
     # 涉政视频列表redis存储key
     POLITICAL_VIDEOS_KEY_NAME = 'political:videos'
+    # 涉政视频可分发的端
+    POLITICAL_RECOMMEND_APP_TYPE_LIST = [
+        APP_TYPE['VLOG'],  # vlog
+        APP_TYPE['LOVE_LIVE'],  # 票圈视频
+        APP_TYPE['APP'],  # 票圈视频APP
+    ]
 
     # 宗教视频更新使用数据
     RELIGION_VIDEOS_PROJECT = 'loghubods'

+ 8 - 1
pool_predict.py

@@ -6,7 +6,8 @@ import traceback
 import random
 
 from config import set_config
-from utils import request_post, filter_video_status, send_msg_to_feishu, filter_video_status_app
+from utils import request_post, filter_video_status, send_msg_to_feishu, filter_video_status_app, \
+    filter_political_videos
 from log import Log
 from db_helper import RedisHelper
 from odps import ODPS
@@ -137,9 +138,15 @@ def predict(app_type, video_info_list):
         else:
             filtered_videos = filter_video_status(list(video_ids))
         log_.info('filter videos status finished, filtered_videos nums={}'.format(len(filtered_videos)))
+
+        # 涉政视频过滤
+        if app_type not in config_.POLITICAL_RECOMMEND_APP_TYPE_LIST:
+            filtered_videos = filter_political_videos(video_ids=filtered_videos)
+
         if not filtered_videos:
             log_.info('流量池中视频状态不符合分发')
             return video_info_list
+
         # 预测
         video_score = get_score(filtered_videos)
         log_.info('predict finished!')