Commit fa005a26 by baiquan

add upload_video

parent 2f91b362
...@@ -23,13 +23,17 @@ class SyncShopInfoRequest(BaseModel): ...@@ -23,13 +23,17 @@ class SyncShopInfoRequest(BaseModel):
class CreateTemplateRequest(BaseModel): class CreateTemplateRequest(BaseModel):
cookies: dict cookies: dict
template_params: dict template_params: dict
proxies: dict = None proxies: dict
class DoudianLoginRequest(BaseModel): class DoudianLoginRequest(BaseModel):
account: str account: str
password: str password: str
headers: dict headers: dict
proxies: dict = None proxies: dict
class DoudianUploadVideoRequest(BaseModel):
task: dict
@app.post( @app.post(
...@@ -135,6 +139,26 @@ def doudian_login(req: DoudianLoginRequest): ...@@ -135,6 +139,26 @@ def doudian_login(req: DoudianLoginRequest):
'error_type': 'TimeoutError' 'error_type': 'TimeoutError'
} }
@sync_router.post(
"/upload_video",
status_code=status.HTTP_200_OK,
summary="抖店上传视频",
)
def doudian_upload_video(req: DoudianUploadVideoRequest):
try:
task = celery_app.send_task('doudian_upload_video', kwargs=req.dict())
result = task.get(timeout=60)
logger.info(f"任务结果: {result}")
return result
except Exception as e:
logger.error(f"任务执行失败: {str(e)}")
return {
'code': 504,
'msg': '请求超时',
'data': None,
'error_type': 'TimeoutError'
}
# 注册路由 # 注册路由
app.include_router(sync_router) app.include_router(sync_router)
......
from celery import shared_task from celery import shared_task
from upload_video import upload_video
from login import login from login import login
from errors import * from errors import *
from hub_ import * from hub_ import *
...@@ -124,3 +125,31 @@ def execute_doudian_login(account: str, password: str, headers: dict, proxies: d ...@@ -124,3 +125,31 @@ def execute_doudian_login(account: str, password: str, headers: dict, proxies: d
'data': None, 'data': None,
'error_type': 'InternalError' 'error_type': 'InternalError'
} }
@shared_task(name='doudian_upload_video')
def execute_doudian_upload_video(task: dict):
"""上传视频"""
try:
result = upload_video(task)
return {
'code': 200,
'msg': 'success',
'data': result,
'error_type': ''
}
except AppError as e:
logger.error(f'上传视频异常:{e}')
return {
'code': e.code,
'msg': e.msg,
'data': e.data,
'error_type': type(e).__name__
}
except Exception as e:
logger.error(f'上传视频异常:{e}')
return {
'code': 500,
'msg': f'上传视频异常:{e}',
'data': None,
'error_type': 'InternalError'
}
\ No newline at end of file
This diff is collapsed. Click to expand it.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment