import json from flask import Flask, request, Response from handler.common import MESSAGE_QUEUE, MessagePayload import logging # 不要日志,当它不存在 log = logging.getLogger('werkzeug') log.setLevel(logging.ERROR) app = Flask(__name__) app.config['JSON_AS_ASCII'] = False @app.post("/message") def message_from_mitmproxy(): payload = MessagePayload(request.data, request.headers.get("X-MITM-TS", "")) MESSAGE_QUEUE.put(payload) return Response(status=204) @app.post("/user_info") def user_info_from_mitmproxy(): try: user_info = json.loads(request.data) except json.JSONDecodeError: return Response(status=403) print(user_info) if "user" not in user_info: # 这个请求有问题 return Response(status=403) user = user_info['user'] #有用的信息 { # 抖音加密的用户id,也就是url上的id字符串 "sec_user_id": user.get('sec_uid', ""), # 用户真实的数字id "user_id": user.get('uid', 0), # 开播状态,1是开播了 "live_status": user.get('live_status', 0), # 和西瓜视频一样,每次开播,room_id都会变化,需要动态拿取 "room_id": user.get('room_id', 0), "nickname": user.get('nickname', ""), # 多平台粉丝数,包含西瓜视频等关联字节公司下的账号粉丝总数 "mp_fans_count": user.get('mplatform_followers_count', 0), # 近期加的归属地 "ip_location": user.get('ip_location', ""), } return Response(status=204)