# Author renyupeng # coding=utf-8 # @Time : 2023/3/23 2:49 下午 # @Site : # @File : SpiderDouyinHeader.py # @Software: PyCharm # @contact: renyupeng@c-top.com.cn # @Tel 1501435553 import json import requests from utils.mysql_utils_pro import MysqlProUtils class SpiderDouyinHeader: def __int__(self): self.conn = MysqlProUtils() def DouyinHandler(self, promoter_id, cookie): url = "https://api-service.chanmama.com/v5/home/author/search?keyword={promoter_id}&author_type=0&category_id=-1&group_purchase_province=&big_group_purchase_category=&group_purchase_author_type=0&group_purchase_level=&group_purchase_part=0&group_purchase_is_self_play=0&star_category=&star_sub_category=&gender=-1&age=&province=&fans_gender=-1&fans_age=&fans_province=&live_price_preference=&aweme_price_preference=&live_purchase_intention=-1&aweme_purchase_intention=-1&follower_count=&take_product_method=0&verification_type=0&author_level=&is_brand_self_author=0&is_shop_author=0&is_star_author=0&is_low_fans_high_gmv=0&is_commerce=0&author_self_play=0&take_product_level=&has_take_product_day30=0&take_product_price=&reputation_level=-1&live_watch_count=&live_average_amount_30_v2=&gpm=&digg_count=&is_ignore_government=1&contact=0&is_steped_author=0&similar_author_id=&page=1&size=50&sort=follower_count&bring_product_brand=&order_by=desc&from=detail".format( promoter_id=promoter_id) payload = {} headers = { 'Cookie': cookie, 'User-Agent': 'Apifox/1.0.0 (https://www.apifox.cn)', 'Accept': '*/*', 'Host': 'api-service.chanmama.com', 'Connection': 'keep-alive' } rep = requests.request("GET", url, headers=headers, data=payload) if json.loads(rep.text)["data"] is not None: dy_info_list = json.loads(rep.text)["data"]['list'] dy_promoter_item = {} if dy_info_list is not None: for dy_info in dy_info_list: if dy_info['unique_id'] == promoter_id: print(dy_info, '-----------------') nickname = dy_info['nickname'] unique_id = dy_info['unique_id'] avatar = dy_info['avatar'] follower_incr = dy_info['follower_incr'] follower_count = dy_info['follower_count'] aweme_avg_digg_count_30 = dy_info['aweme_avg_digg_count_30'] aweme_digg_follower_ration = dy_info['aweme_digg_follower_ration'] live_count_30 = dy_info['live_count_30'] live_average_user_30 = dy_info['live_average_user_30'] live_total_amount_30_text = dy_info['live_total_amount_30_text'] dy_promoter_item = { ##达人名称 "promoterNickName": nickname, ##达人头像 "promoterHeadImgUrl": avatar, ## 达人ID "promoter_id": unique_id, ##粉丝增量 "follower_incr": follower_incr, ## 粉丝数 "fanNum": follower_count, ## 总销售额 "totalSale": live_total_amount_30_text, ## 直播场次 "live_count_30": live_count_30, ## 平均点赞量 "aweme_avg_digg_count_30": aweme_avg_digg_count_30, ## 平均赞粉比 "aweme_digg_follower_ration": aweme_digg_follower_ration, ##直播平均场观 "live_average_user_30": live_average_user_30 } dy_promoter_item = json.dumps(dy_promoter_item) return dy_promoter_item else: return 10086