|
@@ -1,6 +1,6 @@
|
|
|
import time
|
|
|
|
|
|
-from datetime import date, timedelta
|
|
|
+from datetime import date, timedelta, datetime
|
|
|
from log import Log
|
|
|
from db_helper import RedisHelper
|
|
|
from config import set_config
|
|
@@ -171,16 +171,29 @@ class PoolRecall(object):
|
|
|
:return: key_name
|
|
|
"""
|
|
|
if pool_type == 'rov':
|
|
|
- # 判断热度列表是否更新,未更新则使用前一天的热度列表
|
|
|
- key_name = config_.RECALL_KEY_NAME_PREFIX + time.strftime('%Y%m%d')
|
|
|
- if self.redis_helper.key_exists(key_name):
|
|
|
- redis_date = date.today().strftime('%Y%m%d')
|
|
|
+ # appType = 6
|
|
|
+ if self.app_type == config_.APP_TYPE['SHORT_VIDEO']:
|
|
|
+ # 获取当前所在小时
|
|
|
+ redis_date = datetime.now().hour
|
|
|
+ # 判断热度列表是否更新,未更新则使用前一小时的热度列表
|
|
|
+ key_name = '{}{}.{}'.format(config_.RECALL_KEY_NAME_PREFIX_APP_TYPE, self.app_type, redis_date)
|
|
|
+ if self.redis_helper.key_exists(key_name):
|
|
|
+ return key_name, redis_date
|
|
|
+ else:
|
|
|
+ key_name = '{}{}.{}'.format(config_.RECALL_KEY_NAME_PREFIX_APP_TYPE, self.app_type, redis_date - 1)
|
|
|
+ return key_name, redis_date - 1
|
|
|
+ # 其他
|
|
|
else:
|
|
|
- redis_date = (date.today() - timedelta(days=1)).strftime('%Y%m%d')
|
|
|
- key_name = config_.RECALL_KEY_NAME_PREFIX + redis_date
|
|
|
- # if not self.redis_helper.key_exists(key_name):
|
|
|
- # return None, None
|
|
|
- return key_name, redis_date
|
|
|
+ # 判断热度列表是否更新,未更新则使用前一天的热度列表
|
|
|
+ key_name = config_.RECALL_KEY_NAME_PREFIX + time.strftime('%Y%m%d')
|
|
|
+ if self.redis_helper.key_exists(key_name):
|
|
|
+ redis_date = date.today().strftime('%Y%m%d')
|
|
|
+ else:
|
|
|
+ redis_date = (date.today() - timedelta(days=1)).strftime('%Y%m%d')
|
|
|
+ key_name = config_.RECALL_KEY_NAME_PREFIX + redis_date
|
|
|
+ # if not self.redis_helper.key_exists(key_name):
|
|
|
+ # return None, None
|
|
|
+ return key_name, redis_date
|
|
|
|
|
|
elif pool_type == 'flow':
|
|
|
return config_.FLOW_POOL_KEY_NAME_PREFIX + str(self.app_type)
|
|
@@ -194,7 +207,8 @@ class PoolRecall(object):
|
|
|
rov_pool_key, redis_date = self.get_pool_redis_key('rov')
|
|
|
if not rov_pool_key:
|
|
|
return None, None, None
|
|
|
- last_rov_recall_key = config_.LAST_VIDEO_FROM_ROV_POOL_PREFIX + '{}.{}.{}'.format(self.app_type, self.mid, redis_date)
|
|
|
+ last_rov_recall_key = config_.LAST_VIDEO_FROM_ROV_POOL_PREFIX + '{}.{}.{}'.format(
|
|
|
+ self.app_type, self.mid, redis_date)
|
|
|
value = self.redis_helper.get_data_from_redis(last_rov_recall_key)
|
|
|
if value:
|
|
|
idx = self.redis_helper.get_index_with_data(rov_pool_key, value)
|