wangkun 2 jaren geleden
bovenliggende
commit
24551dec32
5 gewijzigde bestanden met toevoegingen van 36 en 41 verwijderingen
  1. 0 1
      main/run_xiaoniangao_hour_list.py
  2. 9 6
      main/xiaoniangao_hour_list.py
  3. 15 15
      main/xiaoniangao_person_list.py
  4. 11 18
      main/xiaoniangao_play_list.py
  5. 1 1
      xiaoniangao.sh

+ 0 - 1
main/run_xiaoniangao_hour_list.py

@@ -26,7 +26,6 @@ def hour_list_job():
         while True:
             # 获取符合规则的视频,写入列表
             HourList.get_hour_list_feeds("hour")
-            time.sleep(1)
             hour_list_job_time = datetime.datetime.now()
             if hour_list_job_time.hour == 10 and 0 <= hour_list_job_time.minute <= 10:
 

+ 9 - 6
main/xiaoniangao_hour_list.py

@@ -351,26 +351,25 @@ class HourList:
                     # 从云文档中去重: 小时级_已下载表
                     elif video_id in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "yatRv2") for j in i]:
                         Common.logger(log_type).info("该视频已下载:{}", video_title)
-                        time.sleep(1)
+                    elif video_id in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "InCA1I") for j in i]:
+                        Common.logger(log_type).info("该视频已下载:{}", video_title)
 
                     # 从云文档中去重: 用户主页_已下载表
                     elif video_id in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "Wu0CeL") for j in i]:
                         Common.logger(log_type).info("该视频已下载:{}", video_title)
-                        time.sleep(1)
+                    elif video_id in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "bkIrcr") for j in i]:
+                        Common.logger(log_type).info("该视频已下载:{}", video_title)
 
                     # 从云文档去重: 播放量_已下载表
                     elif video_id in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "c85k1C") for j in i]:
                         Common.logger(log_type).info("该视频已下载:{}", video_title)
-                        time.sleep(1)
 
                     # 从云文档去重: 小年糕小时级数据_feeds
                     elif video_id in [j for i in Feishu.get_values_batch("hour", "xiaoniangao", "ba0da4") for j in i]:
                         Common.logger(log_type).info("该视频已保存过:{}", video_title)
-                        time.sleep(1)
 
                     else:
                         # feeds工作表,插入空行
-                        time.sleep(1)
                         Feishu.insert_columns(log_type, "xiaoniangao", "ba0da4", "ROWS", 2, 3)
 
                         # 获取当前时间
@@ -388,7 +387,7 @@ class HourList:
                                    str(time.strftime("%Y/%m/%d %H:%M:%S", time.localtime(get_feeds_time))),
                                    video_play_cnt]]
                         # 等待 1s,防止操作云文档太频繁,导致报错
-                        time.sleep(1)
+                        time.sleep(0.5)
                         Feishu.update_values(log_type, "xiaoniangao", "ba0da4", "A3:K3", values)
                         Common.logger(log_type).info("视频添加至小时级数据_feeds成功:{}\n".format(video_title))
 
@@ -787,9 +786,13 @@ class HourList:
                         # 从云文档中去重: 小时级_已下载表
                         elif v_id in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "yatRv2") for j in i]:
                             Common.logger(log_type).info("该视频已下载:{}", v_title)
+                        elif v_id in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "InCA1I") for j in i]:
+                            Common.logger(log_type).info("该视频已下载:{}", v_title)
                         # 从云文档中去重: 用户主页_已下载表
                         elif v_id in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "Wu0CeL") for j in i]:
                             Common.logger(log_type).info("该视频已下载:{}", v_title)
+                        elif v_id in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "bkIrcr") for j in i]:
+                            Common.logger(log_type).info("该视频已下载:{}", v_title)
                         # 从云文档中去重: 播放量_已下载表
                         elif v_id in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "c85k1C") for j in i]:
                             Common.logger(log_type).info("该视频已下载:{}", v_title)

+ 15 - 15
main/xiaoniangao_person_list.py

@@ -429,7 +429,7 @@ class Person:
                     video_send_time = feeds[i]["t"]
                 else:
                     video_send_time = 0
-                cls.send_time = video_send_time/1000
+                cls.send_time = video_send_time / 1000
 
                 # 宽和高
                 if "w" in feeds[i] or "h" in feeds[i]:
@@ -497,23 +497,23 @@ class Person:
                     Common.logger(log_type).info("视频已中敏感词:{}\n".format(video_title))
 
                 # 从云文档去重: 小时级_已下载表
-                elif video_id in [m for n in Feishu.get_values_batch(log_type, "xiaoniangao", "yatRv2") for m in
-                                  n]:
+                elif video_id in [m for n in Feishu.get_values_batch(log_type, "xiaoniangao", "yatRv2") for m in n]:
+                    Common.logger(log_type).info("该视频已下载:{}\n", video_title)
+                elif video_id in [m for n in Feishu.get_values_batch(log_type, "xiaoniangao", "InCA1I") for m in n]:
                     Common.logger(log_type).info("该视频已下载:{}\n", video_title)
 
                 # 从云文档去重: 用户主页_已下载表
-                elif video_id in [m for n in Feishu.get_values_batch(log_type, "xiaoniangao", "Wu0CeL") for m in
-                                  n]:
+                elif video_id in [m for n in Feishu.get_values_batch(log_type, "xiaoniangao", "Wu0CeL") for m in n]:
+                    Common.logger(log_type).info("该视频已下载:{}\n", video_title)
+                elif video_id in [m for n in Feishu.get_values_batch(log_type, "xiaoniangao", "bkIrcr") for m in n]:
                     Common.logger(log_type).info("该视频已下载:{}\n", video_title)
 
                 # 从云文档去重: 播放量_已下载表
-                elif video_id in [m for n in Feishu.get_values_batch(log_type, "xiaoniangao", "c85k1C") for m in
-                                  n]:
+                elif video_id in [m for n in Feishu.get_values_batch(log_type, "xiaoniangao", "c85k1C") for m in n]:
                     Common.logger(log_type).info("该视频已下载:{}\n", video_title)
 
                 # 从云文档去重: 用户主页_feeds
-                elif video_id in [m for n in Feishu.get_values_batch(log_type, "xiaoniangao", "k6ldje") for m in
-                                  n]:
+                elif video_id in [m for n in Feishu.get_values_batch(log_type, "xiaoniangao", "k6ldje") for m in n]:
                     Common.logger(log_type).info("该视频已在个人主页feeds:{}\n", video_title)
 
                 else:
@@ -570,7 +570,7 @@ class Person:
     def download_publish(cls, log_type, env):
         try:
             person_sheet = Feishu.get_values_batch(log_type, "xiaoniangao", "k6ldje")
-            for i in range(1, len(person_sheet)+1):
+            for i in range(1, len(person_sheet) + 1):
                 time.sleep(1)
                 download_video_id = person_sheet[i][7]
                 download_video_title = person_sheet[i][8]
@@ -588,7 +588,7 @@ class Person:
                 download_cover_url = person_sheet[i][20]
                 download_video_url = person_sheet[i][21]
 
-                Common.logger("person").info("正在判断第{}行,视频:{}", i+1, download_video_title)
+                Common.logger("person").info("正在判断第{}行,视频:{}", i + 1, download_video_title)
 
                 # 过滤空行及空标题视频
                 if download_video_id is None \
@@ -607,16 +607,16 @@ class Person:
                     return
 
                 # 从云文档去重: 小时级_已下载表
-                elif download_video_id in [j for m in Feishu.get_values_batch(
-                        "person", "xiaoniangao", "yatRv2") for j in m]:
+                elif download_video_id in [j for m in Feishu.get_values_batch("person", "xiaoniangao", "yatRv2") for j in m] \
+                        or download_video_id in [j for m in Feishu.get_values_batch("person", "xiaoniangao", "InCA1I") for j in m]:
                     # 删除行或列,可选 ROWS、COLUMNS
                     Feishu.dimension_range("person", "xiaoniangao", "k6ldje", "ROWS", i + 1, i + 1)
                     Common.logger("person").info("视频已下载:{},删除成功\n", download_video_title)
                     return
 
                 # 从云文档去重: 用户主页_已下载表
-                elif download_video_id in [j for m in Feishu.get_values_batch(
-                        "person", "xiaoniangao", "Wu0CeL") for j in m]:
+                elif download_video_id in [j for m in Feishu.get_values_batch("person", "xiaoniangao", "Wu0CeL") for j in m] \
+                        or download_video_id in [j for m in Feishu.get_values_batch("person", "xiaoniangao", "bkIrcr") for j in m]:
                     # 删除行或列,可选 ROWS、COLUMNS
                     Feishu.dimension_range("person", "xiaoniangao", "k6ldje", "ROWS", i + 1, i + 1)
                     Common.logger("person").info("视频已下载:{},删除成功\n", download_video_title)

+ 11 - 18
main/xiaoniangao_play_list.py

@@ -318,28 +318,22 @@ class PlayList:
                         time.sleep(1)
 
                     # 从云文档中去重: 小时级_已下载表
-                    elif str(video_id) in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "yatRv2") for j
-                                           in i]:
+                    elif str(video_id) in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "yatRv2") for j in i] \
+                            or str(video_id) in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "InCA1I") for j in i]:
                         Common.logger(log_type).info("该视频已下载:{}\n", video_title)
-                        time.sleep(1)
 
                     # 从云文档中去重: 用户主页_已下载表
-                    elif str(video_id) in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "Wu0CeL") for j
-                                           in i]:
+                    elif str(video_id) in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "Wu0CeL") for j in i] \
+                            or str(video_id) in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "bkIrcr") for j in i]:
                         Common.logger(log_type).info("该视频已下载:{}\n", video_title)
-                        time.sleep(1)
 
                     # 从云文档中去重: 播放量_已下载表
-                    elif str(video_id) in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "c85k1C") for j
-                                           in i]:
+                    elif str(video_id) in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "c85k1C") for j in i]:
                         Common.logger(log_type).info("该视频已下载:{}\n", video_title)
-                        time.sleep(1)
 
                     # 从feeds云文档去重
-                    elif str(video_id) in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "me9Qs4") for j
-                                           in i]:
+                    elif str(video_id) in [j for i in Feishu.get_values_batch(log_type, "xiaoniangao", "me9Qs4") for j in i]:
                         Common.logger(log_type).info("该视频已保存:{}\n", video_title)
-                        time.sleep(1)
 
                     else:
                         Feishu.insert_columns(log_type, "xiaoniangao", "me9Qs4", "ROWS", 1, 2)
@@ -410,24 +404,23 @@ class PlayList:
                     Common.logger(log_type).info("播放量:{}<80000,删除成功\n", download_video_play_cnt)
                     return
                 # 从云文档去重: 小时级_已下载表
-                elif str(download_video_id) in [j for m in Feishu.get_values_batch(
-                        log_type, "xiaoniangao", "yatRv2") for j in m]:
+                elif str(download_video_id) in [j for m in Feishu.get_values_batch(log_type, "xiaoniangao", "yatRv2") for j in m] \
+                        or str(download_video_id) in [j for m in Feishu.get_values_batch(log_type, "xiaoniangao", "InCA1I") for j in m]:
                     # 删除行或列,可选 ROWS、COLUMNS
                     Feishu.dimension_range(log_type, "xiaoniangao", "me9Qs4", "ROWS", i + 1, i + 1)
                     Common.logger(log_type).info("视频已下载:{},删除成功\n", download_video_title)
                     return
 
                 # 从云文档去重: 用户主页_已下载表
-                elif str(download_video_id) in [j for m in Feishu.get_values_batch(
-                        log_type, "xiaoniangao", "Wu0CeL") for j in m]:
+                elif str(download_video_id) in [j for m in Feishu.get_values_batch(log_type, "xiaoniangao", "Wu0CeL") for j in m] \
+                        or str(download_video_id) in [j for m in Feishu.get_values_batch(log_type, "xiaoniangao", "bkIrcr") for j in m]:
                     # 删除行或列,可选 ROWS、COLUMNS
                     Feishu.dimension_range(log_type, "xiaoniangao", "me9Qs4", "ROWS", i + 1, i + 1)
                     Common.logger(log_type).info("视频已下载:{},删除成功\n", download_video_title)
                     return
 
                 # 从云文档去重: 播放量_已下载表
-                elif str(download_video_id) in [j for m in Feishu.get_values_batch(
-                        log_type, "xiaoniangao", "c85k1C") for j in m]:
+                elif str(download_video_id) in [j for m in Feishu.get_values_batch(log_type, "xiaoniangao", "c85k1C") for j in m]:
                     # 删除行或列,可选 ROWS、COLUMNS
                     Feishu.dimension_range(log_type, "xiaoniangao", "me9Qs4", "ROWS", i + 1, i + 1)
                     Common.logger(log_type).info("视频已下载:{},删除成功\n", download_video_title)

+ 1 - 1
xiaoniangao.sh

@@ -2,7 +2,7 @@
 echo "开始"
 echo "$(date "+%Y-%m-%d %H:%M:%S") 正在杀进程..."
 # shellcheck disable=SC2009
-# ps aux | grep run_xiaoniangao
+# ps aux | grep run_xiaoniangao | grep -v grep | awk '{print $2}' | xargs kill -9
 ps aux | grep run_xiaoniangao_hour_list.py | grep -v grep | awk '{print $2}' | xargs kill -9
 # shellcheck disable=SC2009
 ps aux | grep run_xiaoniangao_person_list.py | grep -v grep | awk '{print $2}' | xargs kill -9