|
@@ -14,37 +14,26 @@ log_ = Log()
|
|
def update_bottom_videos():
|
|
def update_bottom_videos():
|
|
"""更新兜底视频"""
|
|
"""更新兜底视频"""
|
|
try:
|
|
try:
|
|
- # 获取昨日播放量top1000的视频
|
|
|
|
|
|
+ # 获取总播放量top1000的视频
|
|
now_date = datetime.datetime.today()
|
|
now_date = datetime.datetime.today()
|
|
- delta_date = now_date - datetime.timedelta(days=1)
|
|
|
|
-
|
|
|
|
- sql = "SELECT video_playcount.videoid, video_playcount.play_count " \
|
|
|
|
- "FROM (" \
|
|
|
|
- "SELECT videoid, COUNT(*) play_count " \
|
|
|
|
- "FROM loghubods.video_action_log_applet " \
|
|
|
|
- "WHERE dt = {} " \
|
|
|
|
- "AND business = 'videoPlay' " \
|
|
|
|
- "GROUP BY videoid" \
|
|
|
|
- ") video_playcount INNER " \
|
|
|
|
- "JOIN ( " \
|
|
|
|
- "SELECT id " \
|
|
|
|
- "FROM videoods.wx_video " \
|
|
|
|
- "WHERE transcode_status = 3 " \
|
|
|
|
- "AND STATUS = 1 " \
|
|
|
|
- "AND recommend_status IN ( - 6, 1)" \
|
|
|
|
- ") video_status " \
|
|
|
|
- "ON video_playcount.videoid = video_status.id " \
|
|
|
|
- "ORDER BY video_playcount.play_count DESC " \
|
|
|
|
- "LIMIT 1000;".format(delta_date.strftime('%Y%m%d'))
|
|
|
|
-
|
|
|
|
- records = execute_sql_from_odps(project='loghubods', sql=sql)
|
|
|
|
-
|
|
|
|
- # 视频按照昨日播放量写入redis
|
|
|
|
|
|
+ sql = "SELECT id " \
|
|
|
|
+ ",play_count_total " \
|
|
|
|
+ "FROM videoods.wx_video_test " \
|
|
|
|
+ "WHERE transcode_status = 3 " \
|
|
|
|
+ "AND STATUS = 1 " \
|
|
|
|
+ "AND recommend_status IN ( - 6, 1) " \
|
|
|
|
+ "ORDER BY play_count_total DESC " \
|
|
|
|
+ "LIMIT 1000" \
|
|
|
|
+ ";"
|
|
|
|
+
|
|
|
|
+ records = execute_sql_from_odps(project='videoods', sql=sql)
|
|
|
|
+
|
|
|
|
+ # 视频按照总播放量写入redis
|
|
videos = {}
|
|
videos = {}
|
|
with records.open_reader() as reader:
|
|
with records.open_reader() as reader:
|
|
for record in reader:
|
|
for record in reader:
|
|
- video_id = record['videoid']
|
|
|
|
- videos[video_id] = record['play_count']
|
|
|
|
|
|
+ video_id = record['id']
|
|
|
|
+ videos[video_id] = record['play_count_total']
|
|
# print(videos)
|
|
# print(videos)
|
|
|
|
|
|
redis_helper = RedisHelper()
|
|
redis_helper = RedisHelper()
|
|
@@ -54,7 +43,7 @@ def update_bottom_videos():
|
|
# 移除bottom key的过期时间,将其转换为永久状态
|
|
# 移除bottom key的过期时间,将其转换为永久状态
|
|
redis_helper.persist_key(key_name=config_.BOTTOM_KEY_NAME)
|
|
redis_helper.persist_key(key_name=config_.BOTTOM_KEY_NAME)
|
|
|
|
|
|
- log_.info('{} update bottom videos success!'.format(now_date))
|
|
|
|
|
|
+ log_.info('{} update bottom videos success! num = {}'.format(now_date, len(videos)))
|
|
except Exception as e:
|
|
except Exception as e:
|
|
log_.error(traceback.format_exc())
|
|
log_.error(traceback.format_exc())
|
|
|
|
|