""" @author: luojunhui """ import json from applications.functions.common import async_post async def publish_to_pq(video_obj): """ publish video to pq :return: """ oss_path = video_obj['videoPath'] uid = video_obj['uid'] title = video_obj['title'] url = "https://vlogapi.piaoquantv.com/longvideoapi/crawler/video/send" headers = { "User-Agent": "PQSpeed/486 CFNetwork/1410.1 Darwin/22.6.0", "cookie": "JSESSIONID=4DEA2B5173BB9A9E82DB772C0ACDBC9F; JSESSIONID=D02C334150025222A0B824A98B539B78", "referer": "http://appspeed.piaoquantv.com", "token": "524a8bc871dbb0f4d4717895083172ab37c02d2f", "accept-language": "zh-CN,zh-Hans;q=0.9", "Content-Type": "application/x-www-form-urlencoded", } payload = { "deviceToken": "9ef064f2f7869b3fd67d6141f8a899175dddc91240971172f1f2a662ef891408", "fileExtensions": "MP4", "loginUid": uid, "networkType": "Wi-Fi", "platform": "iOS", "requestId": "fb972cbd4f390afcfd3da1869cd7d001", "sessionId": "362290597725ce1fa870d7be4f46dcc2", "subSessionId": "362290597725ce1fa870d7be4f46dcc2", "title": title, "token": "524a8bc871dbb0f4d4717895083172ab37c02d2f", "uid": uid, "versionCode": "486", "versionName": "3.4.12", "videoFromScene": "1", "videoPath": oss_path, "viewStatus": "1", "appType": 888880, "repeatStatus": 1 } response = await async_post(url, headers, payload) return response async def get_pq_video_detail(video_id): """ 获取票圈视频详情信息 :return: """ url = "https://longvideoapi.piaoquantv.com/longvideoapi/openapi/video/batchSelectVideoInfo" data = { "videoIdList": [video_id] } header = { "Content-Type": "application/json", } response = await async_post(url, header, json.dumps(data)) return response async def get_new_video_ids(video_obj_list): """ video :return: """ vid_list = [] for video_obj in video_obj_list: # video_obj 里面的信息对于历史数据可能不全,需要从pq获取 try: if len(vid_list) >= 3: return vid_list else: pq_response = await publish_to_pq(video_obj) video_id = pq_response['data']['id'] vid_list.append(video_id) except: continue return vid_list