This commit is contained in:
尹舟 2025-04-18 12:05:32 +08:00
parent 66d149675e
commit d378a24f94
2 changed files with 15 additions and 11 deletions

View File

@ -10,6 +10,7 @@ services:
#环境变量需要替换成自己的
environment:
DASHSCOPE_API_KEY: ******
ENVIRONMENT: pro
ports:
- "1314:1314"

25
main.py
View File

@ -3,6 +3,7 @@ import uvicorn
import requests
from utils.response import success_response, error_400_response, error_503_response
from utils.music_analysis import music_analysis
import os
app = FastAPI(title="douyin文档", swagger_ui_parameters={
"defaultModelsExpandDepth": -1
@ -10,6 +11,10 @@ app = FastAPI(title="douyin文档", swagger_ui_parameters={
DEFAULT_PC_VIDEO_URL = 'https://v.douyin.com/-NvlqBdIJo4/'
DEFAULT_mobile_VIDEO_URL = 'https://v.douyin.com/BCfMrTFPYGQ/'
ENVIRONMENT = os.getenv("ENVIRONMENT", "test")
host = '127.0.0.1:9579'
if ENVIRONMENT == "pro":
host = 'http://douyin_tiktok_download_api:80'
@app.get('/douyin_video', tags=["抖音"], summary="返回视屏信息,最全的接口了")
@ -19,21 +24,19 @@ def douyin_video(video_url: str = Query(DEFAULT_mobile_VIDEO_URL, min_length=10)
return {"code": 400, "message": "An error occurred.", "data": "请指定video_url"}
# 获取get请求参数
url = "http://douyin_tiktok_download_api:9579/api/hybrid/video_data"
url = host + "/api/hybrid/video_data"
querystring = {"url": video_url, "minimal": "true"}
response = requests.request("GET", url, params=querystring)
print(response.text)
print(response.json()['data']['music']['play_url'])
try:
if response.json()['code'] == 200:
video_url=response.json()['data']['video_data']['wm_video_url']
video_music=response.json()['data']['music']['play_url']['url_list'][0]
content=music_analysis(video_music)
return success_response({"video_url": video_url,"video_music": video_music,"content": content
video_url = response.json()['data']['video_data']['wm_video_url']
video_music = response.json()['data']['music']['play_url']['url_list'][0]
content = music_analysis(video_music)
return success_response({"video_url": video_url, "video_music": video_music, "content": content
})
except Exception as e:
@ -42,6 +45,7 @@ def douyin_video(video_url: str = Query(DEFAULT_mobile_VIDEO_URL, min_length=10)
return error_503_response({"data": "抖音风控稍后请求."})
@app.get('/douyin_content', tags=["抖音"], summary="手机和pc获取文案")
def douyin_content(video_url: str = Query(DEFAULT_mobile_VIDEO_URL, min_length=10)):
print(video_url)
@ -49,7 +53,7 @@ def douyin_content(video_url: str = Query(DEFAULT_mobile_VIDEO_URL, min_length=1
return {"code": 400, "message": "An error occurred.", "data": "请指定video_url"}
# 获取get请求参数
url = "http://douyin_tiktok_download_api:9579/api/hybrid/video_data"
url = host + "/api/hybrid/video_data"
querystring = {"url": video_url, "minimal": "false"}
response = requests.request("GET", url, params=querystring)
@ -73,7 +77,7 @@ def douyin_pc(video_url: str = Query(DEFAULT_PC_VIDEO_URL, min_length=10)):
return {"code": 400, "message": "An error occurred.", "data": "请指定video_url"}
# 获取get请求参数
url = "http://douyin_tiktok_download_api:9579/api/hybrid/video_data"
url = host + "/api/hybrid/video_data"
querystring = {"url": video_url, "minimal": "false"}
response = requests.request("GET", url, params=querystring)
@ -98,8 +102,7 @@ def douyin_phone(video_url: str = Query(DEFAULT_mobile_VIDEO_URL, min_length=10)
return {"code": 400, "message": "An error occurred.", "data": "请指定video_url"}
# 获取get请求参数
url = "http://douyin_tiktok_download_api:9579/api/hybrid/video_data"
url = host + "/api/hybrid/video_data"
querystring = {"url": video_url, "minimal": "true"}
response = requests.request("GET", url, params=querystring)