Browse Source

增加拼接类数据抓取

zhangyong 1 year ago
parent
commit
100141478c

+ 34 - 0
common/material.py

@@ -33,6 +33,40 @@ class Material():
                     machine="",
                 )
 
+    # 获取抖音 拼接类 用户主页
+    @classmethod
+    def insert_pinjie_user(cls):
+        douyin_pinjie = Feishu.get_values_batch("prod", "succinct", "hHfY4l")
+        channel = '抖音-拼接类'
+        for row in douyin_pinjie[2:]:
+            account_link = row[0]
+            user_id = account_link.split("user/")[1]
+            insert_sql = f"""INSERT INTO video_user_id (user_id, channel) values ('{user_id}', '{channel}')"""
+            MysqlHelper.update_values(
+                sql=insert_sql,
+                env="prod",
+                machine="",
+            )
+
+    # 获取快手视频链接 存入数据库
+    @classmethod
+    def kuaishou_pinjie_user(cls):
+        # 获取快手视频链接
+        kuaishou_pinjie = Feishu.get_values_batch("prod", "succinct", "hHfY4l")
+        # 提取账号昵称和账号主页链接
+        channel = '快手-拼接类'
+        for row in kuaishou_pinjie[2:]:
+            account_link = row[1]
+            user_id = account_link.split("profile/")[1]
+            insert_sql = f"""INSERT INTO video_user_id (user_id, channel) values ('{user_id}', '{channel}')"""
+            MysqlHelper.update_values(
+                sql=insert_sql,
+                env="prod",
+                machine="",
+            )
+
+
+
     # 获取快手视频链接 存入数据库
     @classmethod
     def insert_kuaishou_user(cls):

+ 8 - 2
video_capture/douyin/douyin_author/douyin_author.py

@@ -27,7 +27,7 @@ class douyinAuthor():
     """
     @classmethod
     def get_videoUserId(cls):
-        select_user_sql = f"""select user_id from video_user_id where channel = "抖音";"""
+        select_user_sql = f"""select user_id, channel from video_user_id where channel LIKE '%抖音%' ORDER BY id DESC;"""
         user_list = MysqlHelper.get_values(select_user_sql, "prod")
         return user_list
 
@@ -65,12 +65,14 @@ class douyinAuthor():
             cookie = Material.get_douyin_cookie()
             # 读取飞书表格,更新数据库用户主页id
             Material.insert_user()
+            Material.insert_pinjie_user()
             # 获取 用户主页id
             user_list = cls.get_videoUserId()
             if len(user_list) == 0:
                 return
             for i in user_list:
                 account_id = i[0].replace('(', '').replace(')', '').replace(',', '')
+                channel = i[1].replace('(', '').replace(')', '').replace(',', '')
                 Common.logger("douyin").info(f"用户主页ID:{account_id}")
                 next_cursor = 0
                 while True:
@@ -144,7 +146,11 @@ class douyinAuthor():
                                         break
                                     continue
                                 video_url = data[i].get('video').get('play_addr').get('url_list')[0]  # 视频链接
-                                oss_object_key = Oss.video_sync_upload_oss(video_url, video_id, account_id, "douyin")
+                                if channel == "抖音-拼接类":
+                                    channel_name = 'dypinjie'
+                                else:
+                                    channel_name = 'douyin'
+                                oss_object_key = Oss.video_sync_upload_oss(video_url, video_id, account_id, channel_name)
                                 status = oss_object_key.get("status")
                                 # 发送 oss
                                 oss_object_key = oss_object_key.get("oss_object_key")

+ 3 - 0
video_capture/kuaishou/kuaishou_author/kuaishou_author.py

@@ -62,6 +62,7 @@ class kuaishouAuthor():
             cookie = Material.get_kuaishou_cookie()
             # 读取飞书表格,更新数据库用户主页id
             Material.insert_kuaishou_user()
+            Material.kuaishou_pinjie_user()
             # 获取 用户主页id
             user_list = cls.get_kuaishou_videoUserId()
             if len(user_list) == 0:
@@ -138,6 +139,8 @@ class kuaishouAuthor():
                                 continue
                             if channel == "快手-春节":
                                 channel_name = 'kschunjie'
+                            elif channel == "快手-拼接类":
+                                channel_name = 'kspinjie'
                             else:
                                 channel_name = 'kuaishou'
                             oss_object_key = Oss.video_sync_upload_oss(video_url, video_id, account_id, channel_name)