renyupeng 1 vuosi sitten
vanhempi
commit
d467170b1c

+ 43 - 35
spider/SpiderPromoterHeader.py

@@ -7,8 +7,10 @@
 # @contact: renyupeng@c-top.com.cn
 # @contact: renyupeng@c-top.com.cn
 # @Tel 1501435553
 # @Tel 1501435553
 import json
 import json
+import random
 import time
 import time
 
 
+import redis
 import requests
 import requests
 
 
 from utils.cookie_update import cookie_update
 from utils.cookie_update import cookie_update
@@ -22,47 +24,53 @@ class SpiderPromoterHeader:
 
 
     @staticmethod
     @staticmethod
     def GetPromoterInfo(promoter_id):
     def GetPromoterInfo(promoter_id):
+        r = redis.Redis(host='192.168.0.193', password='hcst@2022', port=6379, db=0)
         listItem = []
         listItem = []
         url = 'https://cps.kwaixiaodian.com/distribute/pc/seller/promoter/info?promoterId={promoterId}&type=1'.format(
         url = 'https://cps.kwaixiaodian.com/distribute/pc/seller/promoter/info?promoterId={promoterId}&type=1'.format(
             promoterId=promoter_id)
             promoterId=promoter_id)
 
 
-        cookie = cookie_update.get_cookie_handler()[0]
-        phone_num = cookie_update.get_cookie_handler()[1]
+        if r.zcard('kuaishou_shop_click_token') == 0:
+            cookie_update.get_click_coookie_to_redis()
+        else:
+            random_member = r.zrange('kuaishou_shop_click_token', 0, -1, withscores=True)
+            random_item = random.choice(random_member)
+            cookie = random_item[0].decode('utf-8')
+            phone_num = int(random_item[1])
 
 
-        headers = {'User-Agent': 'Mozilla/5.0',
-                   'Cookie': cookie}
+            headers = {'User-Agent': 'Mozilla/5.0',
+                       'Cookie': cookie}
 
 
-        try:
-            rep = requests.get(url=url, headers=headers)
-            print(rep.text, '-----rep.txt---------')
-            # if json.loads(rep.text)["result"] != 1 and json.loads(rep.text)["result"] != 100110000:
-            #     cookie_update.update_temporary_cookie_handler(phone_num)
-            #     retry_cookie = cookie_update.get_cookie_handler()[0]
-            #     headers = {'User-Agent': 'Mozilla/5.0',
-            #                'Cookie': retry_cookie}
-            #     rep = requests.get(url=url, headers=headers)
-            #     data = json.loads(rep.text)["data"]
-            #     item = {"fans": data["fanNum"], "handurl": data["promoterHeadImgUrl"],
-            #             "promoter_name": data["promoterNickName"],
-            #             "promoter_id": promoter_id}
-            #     listItem.append(item)
-            #     return listItem
-            # elif json.loads(rep.text)["result"] == 100110000:
-            #     cookie_update.update_cookie_handler(phone_num)
-            #     return
-            if json.loads(rep.text)["result"] == 1:
-                data = json.loads(rep.text)["data"]
-                print(data)
-                item = {"fans": data["fanNum"], "handurl": data["promoterHeadImgUrl"],
-                        "promoter_name": data["promoterNickName"],
-                        "promoter_id": promoter_id}
-                listItem.append(item)
-                return listItem
-            else:
-                return
-        except Exception as e:
-            SendFeiShuMsg.send_robot_msg(
-                'GetPromoterInfo {promoterId}请求错误请检查cookie{e}'.format(promoterId=promoter_id, e=e))
+            try:
+                rep = requests.get(url=url, headers=headers)
+                print(rep.text, '-----rep.txt---------')
+                # if json.loads(rep.text)["result"] != 1 and json.loads(rep.text)["result"] != 100110000:
+                #     cookie_update.update_temporary_cookie_handler(phone_num)
+                #     retry_cookie = cookie_update.get_cookie_handler()[0]
+                #     headers = {'User-Agent': 'Mozilla/5.0',
+                #                'Cookie': retry_cookie}
+                #     rep = requests.get(url=url, headers=headers)
+                #     data = json.loads(rep.text)["data"]
+                #     item = {"fans": data["fanNum"], "handurl": data["promoterHeadImgUrl"],
+                #             "promoter_name": data["promoterNickName"],
+                #             "promoter_id": promoter_id}
+                #     listItem.append(item)
+                #     return listItem
+                # elif json.loads(rep.text)["result"] == 100110000:
+                #     cookie_update.update_cookie_handler(phone_num)
+                #     return
+                if json.loads(rep.text)["result"] == 1:
+                    data = json.loads(rep.text)["data"]
+                    print(data)
+                    item = {"fans": data["fanNum"], "handurl": data["promoterHeadImgUrl"],
+                            "promoter_name": data["promoterNickName"],
+                            "promoter_id": promoter_id}
+                    listItem.append(item)
+                    return listItem
+                else:
+                    return
+            except Exception as e:
+                SendFeiShuMsg.send_robot_msg(
+                    'GetPromoterInfo {promoterId}请求错误请检查cookie{e}'.format(promoterId=promoter_id, e=e))
 
 
     def GetPromoterID(self):
     def GetPromoterID(self):
         try:
         try:

+ 3 - 3
spider/SpiderPromoterInfo.py

@@ -96,9 +96,9 @@ class SpiderPromoterInfo:
         totalSale = roll["promoteBaseInfo"]["totalSale"]
         totalSale = roll["promoteBaseInfo"]["totalSale"]
         avgVideoSales = roll["promoteBaseInfo"]["avgVideoSales"]
         avgVideoSales = roll["promoteBaseInfo"]["avgVideoSales"]
         videoSales = roll["promoteBaseInfo"]["videoSales"]
         videoSales = roll["promoteBaseInfo"]["videoSales"]
-        sql = """ update ruixuan.promoter_sales_info set   total_sale={totalSale} ,fans_number={fanNum},avg_video_sales={avgVideoSales}
-         video_sales={videoSales} where promoter_id={promoterId}
-         """.format(totalSale=totalSale, fanNum=fanNum, avgVideoSales=avgVideoSales, videoSales=videoSales,promoterId=promoter_id)
+        sql = """ replace into ruixuan.promoter_sales_info(promoter_id, total_sale, fans_number, avg_video_sales, video_sales) values (
+    {promoterId},'{totalSale}',{fanNum},'{avgVideoSales}','{videoSales}'
+    ) """.format(totalSale=totalSale, fanNum=fanNum, avgVideoSales=avgVideoSales, videoSales=videoSales,promoterId=promoter_id)
         MysqlProUtils().Operate(sql=sql)
         MysqlProUtils().Operate(sql=sql)
 
 
 
 

+ 2 - 2
spider/SpiderWeekPromoterInfo.py

@@ -96,8 +96,8 @@ class SpiderWeekPromoterInfo:
         totalSale = roll["promoteBaseInfo"]["totalSale"]
         totalSale = roll["promoteBaseInfo"]["totalSale"]
         avgVideoSales = roll["promoteBaseInfo"]["avgVideoSales"]
         avgVideoSales = roll["promoteBaseInfo"]["avgVideoSales"]
         videoSales = roll["promoteBaseInfo"]["videoSales"]
         videoSales = roll["promoteBaseInfo"]["videoSales"]
-        sql = """ update ruixuan.promoter_sales_info set   total_sale={totalSale} ,fans_number={fanNum},avg_video_sales={avgVideoSales}
-         video_sales={videoSales} where promoter_id={promoterId}
+        sql = """ replace into ruixuan.promoter_sales_info(promoter_id, total_sale, fans_number, avg_video_sales, video_sales) values (
+    {promoterId},'{totalSale}',{fanNum},'{avgVideoSales}','{videoSales}'
          """.format(totalSale=totalSale, fanNum=fanNum, avgVideoSales=avgVideoSales, videoSales=videoSales,
          """.format(totalSale=totalSale, fanNum=fanNum, avgVideoSales=avgVideoSales, videoSales=videoSales,
                     promoterId=promoter_id)
                     promoterId=promoter_id)
         MysqlProUtils().Operate(sql=sql)
         MysqlProUtils().Operate(sql=sql)