2.7 KiB
2.7 KiB
视频上传和定时发布功能使用说明
本文档介绍如何使用系统提供的视频上传和定时发布功能。
前提条件
-
已安装所有依赖包:
pip install -r requirements.txt
-
确保Redis服务已启动(用于Celery任务队列)
redis-server
-
启动Celery Worker(处理后台任务)
celery -A role_based_system worker -l info
-
启动Celery Beat(处理定时任务)
celery -A role_based_system beat -l info
方法一:通过命令行测试
准备平台账号
首先,确保系统中已存在至少一个平台账号。可以通过admin界面或API创建。
上传视频并设置定时发布
使用以下命令上传视频并计划发布:
python manage.py test_video_upload "D:\pythonproject\role_based\role_based_system\上传视频测试.mp4" 1 --title "测试视频标题" --desc "这是一个测试视频描述" --schedule "2023-08-10 15:30:00"
参数说明:
- 第一个参数:视频文件路径
- 第二个参数:平台账号ID
--title
:视频标题(可选,默认使用文件名)--desc
:视频描述(可选)--schedule
:计划发布时间(可选,格式:YYYY-MM-DD HH:MM:SS)
手动发布视频
如果要立即发布视频,可以使用以下命令:
python manage.py publish_video 1
参数说明:
- 视频ID
方法二:通过API接口
上传视频
使用POST请求上传视频:
POST /api/operation/videos/upload_video/
表单数据:
video_file
:视频文件platform_account
:平台账号IDtitle
:视频标题(可选)description
:视频描述(可选)scheduled_time
:计划发布时间(可选,ISO格式)tags
:标签(可选)
手动发布视频
使用POST请求立即发布视频:
POST /api/operation/videos/{video_id}/manual_publish/
如何验证视频是否成功发布
-
检查视频记录状态:
python manage.py shell >>> from user_management.models import Video >>> Video.objects.get(id=1).status 'published'
-
查看日志记录:
tail -f debug.log
-
通过API查询视频状态:
GET /api/operation/videos/{video_id}/
注意事项
- 视频文件会被保存在媒体目录(默认为
media/videos/{platform_name}_{account_name}/
) - 定时发布功能依赖于Celery和Redis,确保这些服务正常运行
- 本系统目前仅模拟视频发布过程,实际发布到各平台需要扩展相关API
- 默认视频状态流转:draft(草稿)-> scheduled(已排期)-> published(已发布)或 failed(失败)