服务端上传(基于 Python SDK)
服务端上传(基于 Python SDK)
<time>10min ~ 20min</time>
使用云点播服务端上传 Python SDK,将服务器上的本地视频文件上传到云点播。
确认前置条件
开始操作前,请确认您已经开通了腾讯云云点播(VOD)服务,以及已经准备好了 API 密钥。
安装 pip3 工具
在终端执行:
sudo apt install -y python3-pip
<checker type="output-contains" command="pip3 --version" hint="请先安装 pip3"> <keyword regex="^pip" /> </checker>
安装服务端上传 Python SDK
在终端执行:
pip3 install vod-python-sdk
<checker type="output-contains" command="pip3 show vod-python-sdk" hint="请先安装 Python SDK"> <keyword regex="Name: vod-python-sdk" /> </checker>
编写上传代码
创建测试目录并开始编写代码文件,在终端执行:
mkdir ~/svr_upload/; cd ~/svr_upload; vim svr_upload.py;
将以下代码输入到 svr_upload.py
中并保存,注意其中的 SECRET_ID
和 SECRET_KEY
需要使用您的 API 密钥:
#!/usr/bin/python3
# -*- coding:utf-8 -*-
"""云点播服务端上传脚本
1. 输入参数为本地待上传视频文件的路径
2. 调用 VOD Python 上传 SDK 进行上传
3. 打印出 SDK 的原始返回内容
"""
import sys
from qcloud_vod.vod_upload_client import VodUploadClient
from qcloud_vod.model import VodUploadRequest
SECRET_ID = "" # 请填入真实的 secret id
SECRET_KEY = "" # 请填入真实的 secret id
def usage():
"""脚本用法"""
print("Usage: python3 sys.argv[0] {LocalVideoPath}")
sys.exit(1)
def upload_media(video):
"""调用 VOD Python 上传 SDK 进行上传"""
try:
client = VodUploadClient(SECRET_ID, SECRET_KEY)
req = VodUploadRequest()
req.MediaFilePath = video
rsp = client.upload("ap-chongqing", req)
return rsp
except KeyError as err:
print(err)
def main():
"""main"""
# 解析参数,获取待上传文件路径
if len(sys.argv) < 2:
usage()
video_path = sys.argv[1]
# 发起上传
rsp = upload_media(video_path)
if rsp is not None:
print(rsp)
if __name__ == "__main__":
main()
<checker type="output-contains" command="ls -la ~/svr_upload" hint="请先编写上传代码"> <keyword regex="svr_upload.py" /> </checker>
准备测试视频
下载测试视频到服务器上,在终端执行:
wget http://1400329073.vod2.myqcloud.com/d62d88a7vodtranscq1400329073/7a9b2b565285890804459281865/v.f100010.mp4 -O ~/svr_upload/test.mp4
<checker type="output-contains" command="ls -la ~/svr_upload" hint="请下载测试视频"> <keyword regex="test.mp4" /> </checker>
上传视频
在终端执行(上传过程可能需要几十秒):
python3 ~/svr_upload/svr_upload.py ~/svr_upload/test.mp4 > ~/svr_upload/upload.log
<checker type="output-contains" command="cat ~/svr_upload/upload.log" hint="请上传视频"> <keyword regex="FileId" /> </checker>
检查上传结果
现在可以访问云点播控制台媒资管理页面,查看刚刚上传的文件。
学员评价