Browse Source

feat: 加入重写radies的逻辑

jihuaqiang 3 weeks ago
parent
commit
ec9b734cb4
1 changed files with 40 additions and 0 deletions
  1. 40 0
      utils/resetVideosToRadies.py

+ 40 - 0
utils/resetVideosToRadies.py

@@ -0,0 +1,40 @@
+import datetime
+import sys
+import time
+
+import schedule
+from loguru import logger
+logger.add("/app/logs/select.log", rotation="10 MB")
+
+sys.path.append('/app')
+import os
+print("Current working directory:", os.getcwd())
+
+from utils.odps_data import OdpsDataCount
+from utils.redis import RedisHelper
+
+def reset_videos_to_radies(day=3):
+    """重置视频到Redis"""
+    try:
+        dt = (datetime.datetime.now() - datetime.timedelta(days=day)).strftime('%Y%m%d')
+        logger.info(f"重置视频到Redis")
+        redis_trigger_task = "task:video_trigger_insight"
+        sql =f'select clickobjectid as video_id from loghubods.user_share_log where dt = {dt} and topic = "click" group by clickobjectid order by count(distinct machinecode) desc limit 1300'
+        data = OdpsDataCount.main(sql)
+        if not data:
+            return
+        RedisHelper().get_client().rpush(redis_trigger_task, *data)
+        logger.info(f"[R] 写入Redis 成功 共写入 {len(data)} 条")
+    except Exception as e:
+        logger.error(f"[R] 写入Redis写入失败,失败信息{e}")
+
+
+if __name__ == "__main__":
+    import sys
+    day = 3  # 默认值
+    if len(sys.argv) > 1:
+        try:
+            day = int(sys.argv[1])
+        except Exception:
+            pass
+    reset_videos_to_radies(day)