""" @author: luojunhui 对请求进行操作 """ import json import os from applications.match_alg import best_choice from applications.functions.common import Functions from applications.functions.log import logging class ProcessParams(object): """ Params Analysis """ def __init__(self, t_id): self.trace_id = t_id def get_params(self, data): """ "accountName": "公众号名称", "content": "文章正文", "title": "文章标题", "cover": "封面链接" :param data: :return: title """ logging( code="1002", info="处理请求参数", function="get_params", trace_id=self.trace_id, data=data ) return data async def deal(self, data): """执行代码""" params = self.get_params(data) title = params['title'].split("@@")[-1] kimi_title = params['kimi_title'] # account_name = params['accountName'] # ghId = params['ghId'] video_list = params['videoList'] title_p = os.path.join(os.getcwd(), 'applications', 'static', "titles", "{}.json".format(title)) with open(title_p, encoding="utf-8") as f: params_obj = json.loads(f.read()) best_video_id = await best_choice( params_obj=params_obj, trace_id=self.trace_id, search_videos=video_list ) logging( code="1002", info="best video_id --{}".format(best_video_id), function="process", trace_id=self.trace_id ) if best_video_id: print("best video id", best_video_id) response = Functions().request_for_info(best_video_id) productionCover = response['data'][0]['shareImgPath'] # productionName = response["data"][0]['title'] productionName = kimi_title videoUrl = response['data'][0]['videoPath'] user_id = response['data'][0]['user']['uid'] programAvatar = "/static/logo.png" programId = "wx0b7d95eb293b783b" programName = "天天美好祝福好生活" source = "Web" root_share_id, productionPath = Functions().create_gzh_path(video_id=best_video_id, shared_uid=user_id) logging( code="1002", info="root_share_id --{}, productionPath -- {}".format(root_share_id, productionPath), function="process", trace_id=self.trace_id ) result = { "productionCover": productionCover, "productionName": productionName, "programAvatar": programAvatar, "programId": programId, "programName": programName, "source": source, "rootShareId": root_share_id, "productionPath": productionPath, "videoUrl": videoUrl } logging( code="2000", info="统计 root_share_id && video_id", function="process", trace_id=self.trace_id, data={ "rootShareId": root_share_id, "videoId": best_video_id } ) else: result = { "productionCover": None, "productionName": None, "programAvatar": None, "programId": None, "programName": None, "source": None, "rootShareId": None, "productionPath": None, "videoUrl": None } logging( code="1002", info="返回结果", function="process", data=result, trace_id=self.trace_id ) return result