This repository has been archived on 2024-09-10. You can view files and clone it, but cannot push or open issues or pull requests.
Douyin_Web_Live/handler/http_server.py

49 lines
1.5 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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)