Les SDK ApsaraVideo VOD proposent diverses opérations d'API pour le téléchargement de médias. Appelez ces opérations pour charger des fichiers multimédias sur ApsaraVideo VOD. Cette rubrique décrit les scénarios d'utilisation du SDK ApsaraVideo VOD pour Python afin d'appeler des opérations d'API pour télécharger des fichiers multimédias, et fournit des exemples de code.
Scénarios
Cette rubrique présente uniquement des exemples d'appels d'opérations d'API, telles que l'opération permettant d'obtenir un identifiant de téléchargement et une URL de téléchargement. Le tableau suivant décrit les scénarios dans lesquels vous pouvez appeler des opérations d'API pour télécharger des fichiers multimédias.
Opération d'API | Scénario |
| |
| |
|
Prérequis
Installez le SDK ApsaraVideo VOD. Pour plus d'informations, consultez Installation.
Initialisez le SDK ApsaraVideo VOD. Pour plus d'informations, consultez Initialisation.
Dans les exemples suivants, une paire AccessKey est utilisée pour initialiser le SDK ApsaraVideo VOD.
Notes d'utilisation
Tous les exemples de cette rubrique utilisent une paire AccessKey pour initialiser une instance de client.
Pour obtenir les détails des paramètres de requête et de réponse, visitez Alibaba Cloud OpenAPI Explorer et ouvrez l'onglet API Documentations.
Pour des exemples de SDK concernant d'autres opérations d'API, visitez Alibaba Cloud OpenAPI Explorer. Dans l'onglet Parameters, spécifiez les paramètres et lancez l'appel. Sélectionnez ensuite la version du SDK et le langage dans l'onglet SDK Sample Code pour afficher et télécharger le code.
Les exemples de cette rubrique utilisent le SDK V1.0. Pour les exemples V2.0, sélectionnez la version correcte du SDK dans OpenAPI Explorer.
Exemples d'appels d'API
Obtenir une URL et un identifiant pour télécharger un fichier multimédia
Appelez l'opération CreateUploadVideo pour obtenir une URL de téléchargement et un identifiant de téléchargement pour charger un fichier multimédia.
Alibaba Cloud OpenAPI Explorer : CreateUploadVideo.
Exemple de code :
from aliyunsdkvod.request.v20170321 import CreateUploadVideoRequest
def create_upload_video(clt):
request = CreateUploadVideoRequest.CreateUploadVideoRequest()
request.set_Title('Video Title')
request.set_FileName('/opt/video/sample/video_file.mp4')
request.set_Description('Video Description')
# The thumbnail URL. Example: http://192.168.0.1/16/tps/TB1qnJ1PVXXXXXCXXXXXXXXXXXX-700-700.png.
request.set_CoverURL('<your Cover URL>')
request.set_Tags('tag1,tag2')
request.set_CateId(0)
request.set_accept_format('JSON')
response = json.loads(clt.do_action_with_exception(request))
return response
try:
clt = init_vod_client()
uploadInfo = create_upload_video(clt)
print(uploadInfo['UploadAuth'])
print(json.dumps(uploadInfo, ensure_ascii=False, indent=4))
except Exception as e:
print(e)
print(traceback.format_exc())
Mettre à jour l'identifiant de téléchargement
Appelez l'opération RefreshUploadVideo pour mettre à jour l'identifiant de téléchargement d'un fichier multimédia.
Alibaba Cloud OpenAPI Explorer : RefreshUploadVideo.
Exemple de code :
from aliyunsdkvod.request.v20170321 import RefreshUploadVideoRequest
def refresh_upload_video(clt, videoId):
request = RefreshUploadVideoRequest.RefreshUploadVideoRequest()
request.set_VideoId(videoId)
request.set_accept_format('JSON')
return json.loads(clt.do_action_with_exception(request))
try:
clt = init_vod_client()
uploadInfo = refresh_upload_video(clt, 'VideoId')
print(json.dumps(uploadInfo, ensure_ascii=False, indent=4))
except Exception as e:
print(e)
print(traceback.format_exc())
Obtenir une URL et un identifiant pour télécharger une image
Appelez l'opération CreateUploadImage pour obtenir une URL et un identifiant pour télécharger une image.
Alibaba Cloud OpenAPI Explorer : CreateUploadImage.
Exemple de code :
from aliyunsdkvod.request.v20170321 import CreateUploadImageRequest
def create_upload_image(clt, imageType, imageExt):
request = CreateUploadImageRequest.CreateUploadImageRequest()
request.set_ImageType(imageType)
request.set_ImageExt(imageExt)
request.set_accept_format('JSON')
return json.loads(clt.do_action_with_exception(request))
try:
clt = init_vod_client()
imageInfo = create_upload_image(clt, 'cover', 'jpg')
print(json.dumps(imageInfo, ensure_ascii=False, indent=4))
except Exception as e:
print(e)
print(traceback.format_exc())
Obtenir une URL et un identifiant pour télécharger une ressource multimédia auxiliaire
Appelez l'opération CreateUploadAttachedMedia pour obtenir une URL et un identifiant pour télécharger une ressource multimédia auxiliaire.
Alibaba Cloud OpenAPI Explorer : CreateUploadAttachedMedia.
Exemple de code :
from aliyunsdkvod.request.v20170321 import CreateUploadAttachedMediaRequest
def create_upload_attached_media(clt):
request = CreateUploadAttachedMediaRequest.CreateUploadAttachedMediaRequest()
request.set_BusinessType("watermark");
request.set_MediaExt("gif");
request.set_Title("this is a sample");
request.set_accept_format('JSON')
return json.loads(clt.do_action_with_exception(request))
try:
clt = init_vod_client()
uploadInfo = create_upload_attached_media(clt)
print(uploadInfo['UploadAuth'])
print(json.dumps(uploadInfo, ensure_ascii=False, indent=4))
except Exception as e:
print(e)
print(traceback.format_exc())
Télécharger plusieurs fichiers multimédias simultanément à l'aide des URL des fichiers source
Appelez l'opération UploadMediaByURL pour télécharger plusieurs fichiers multimédias simultanément à l'aide des URL des fichiers source.
Alibaba Cloud OpenAPI Explorer : UploadMediaByURL.
Exemple de code :
from aliyunsdkvod.request.v20170321 import UploadMediaByURLRequest
import sys,urllib
def upload_media_by_url(clt):
request = UploadMediaByURLRequest.UploadMediaByURLRequest()
# The URLs of source files. Examples: http://example-bucket-****.cn-shanghai.aliyuncs.com/sample1-****.mp4 and http://example-bucket-****.cn-shanghai.aliyuncs.com/sample2-****.flv.
urls = ["<your URL1>",
"your URL2"]
# Encode the urls and add metadata
uploadUrls = []
uploadMetadatas = []
for url in urls:
if sys.version_info[0] == 3:
encodeUrl = urllib.parse.quote(url)
else:
encodeUrl = urllib.quote(url)
uploadUrls.append(encodeUrl)
uploadMetadatas.append({'SourceURL': encodeUrl, 'Title': 'Sample Title'})
request.set_UploadURLs(','.join(uploadUrls))
request.set_UploadMetadatas(json.dumps(uploadMetadatas))
request.set_accept_format('JSON')
return json.loads(clt.do_action_with_exception(request))
try:
clt = init_vod_client()
uploadInfo = upload_media_by_url(clt)
print(uploadInfo['UploadJobs'])
print(json.dumps(uploadInfo, ensure_ascii=False, indent=4))
except Exception as e:
print(e)
print(traceback.format_exc())
Interroger les informations relatives aux tâches de téléchargement basées sur une URL
Appelez l'opération GetURLUploadInfos pour interroger les informations relatives aux tâches de téléchargement basées sur une URL.
Exemple de code :
from aliyunsdkvod.request.v20170321 import GetURLUploadInfosRequest
import sys,urllib
def get_url_upload_infos(clt):
request = GetURLUploadInfosRequest.GetURLUploadInfosRequest()
# The URLs. Example: http://192.168.0.1/16/sample1-****.mp4 and http://192.168.0.1/16/sample2-****.flv.
urls = ["<your URL1>",
"<your URL2>"]
# Encode URLs.
uploadUrls = []
for url in urls:
if sys.version_info[0] == 3:
encodeUrl = urllib.parse.quote(url)
else:
encodeUrl = urllib.quote(url)
uploadUrls.append(encodeUrl)
# The URLs from which you want to upload media files. Separate multiple URLs with commas (,).
request.set_UploadURLs(','.join(uploadUrls))
# The IDs of the URL-based upload jobs.
#request.set_JobIds("jobId1,jobId2")
request.set_accept_format('JSON')
return json.loads(clt.do_action_with_exception(request))
try:
clt = init_vod_client()
res = get_url_upload_infos(clt)
print(res['NonExists'])
print(json.dumps(res, ensure_ascii=False, indent=4))
except Exception as e:
print(e)
print(traceback.format_exc())
Enregistrer des ressources multimédias
Appelez l'opération RegisterMedia pour enregistrer des ressources multimédias.
Alibaba Cloud OpenAPI Explorer : RegisterMedia.
Exemple de code :
from aliyunsdkvod.request.v20170321 import RegisterMediaRequest
def register_media(clt):
request = RegisterMediaRequest.RegisterMediaRequest()
metadatas = []
# The URL of the media file. Example: https://192.168.0.1/16/vod_sample_****.mp4.
metadatas.append({'FileURL':"<your File URL>", "Title":"RegisterMedia sample Title"})
request.set_RegisterMetadatas(json.dumps(metadatas))
request.set_accept_format('JSON')
return json.loads(clt.do_action_with_exception(request))
try:
clt = init_vod_client()
registerInfo = register_media(clt)
print(registerInfo['RegisteredMediaList'])
print(registerInfo['FailedFileURLs'])
print(json.dumps(registerInfo, ensure_ascii=False, indent=4))
except Exception as e:
print(e)
print(traceback.format_exc())