soporte Contactar con Soporte | Estadoestado del sistema del sistema
Contenido de la página

    Código Python

    En este tema se proporciona una secuencia de comandos de Python de ejemplo para ingerir un vídeo mediante la API de ingesta dinámica.

    Introducción

    Las API REST como las API de la plataforma Brightcove se pueden utilizar con cualquier idioma. El script de Python incluido aquí es solo una muestra para mostrarle cómo se juntan las solicitudes. Hay otra muestra de una simple solicitud GET (para la API de CMS) aquí.

    Dependencias

    • Solicitudes

    secuencia de comandos de Python

    El siguiente código muestra el script. Tenga en cuenta que para usarlo, deberá proporcionar sus propios valores para lo siguiente:

    • ***ID DE CUENTA AQUÍ**** (línea 8)
    • ***ID DE CLIENTE AQUÍ**** (línea 9)
    • ***SECRETO DEL CLIENTE AQUÍ**** (línea 10)
    • ***TÍTULO DEL VIDEO AQUÍ*** (línea 27)
    • ***URL DE VÍDEO FUENTE AQUÍ*** (línea 40)
        #!/usr/bin/env python
        
        import sys
        import requests
        import json
        import argparse
        
        pub_id = "***ACCOUNT ID HERE****"
        client_id = "***CLIENT ID HERE****"
        client_secret = "***CLIENT SECRET HERE****"
        access_token_url = "https://oauth.brightcove.com/v4/access_token"
        profiles_base_url = "http://ingestion.api.brightcove.com/v1/accounts/{pubid}/profiles"
        
        def get_access_token():
            access_token = None
            r = requests.post(access_token_url, params="grant_type=client_credentials", auth=(client_id, client_secret), verify=False)
            if r.status_code == 200:
                access_token = r.json().get('access_token')
                print(access_token)
            return access_token
        
        def create_video():
            access_token = get_access_token()
            headers = { 'Authorization': 'Bearer ' + access_token, "Content-Type": "application/json" }
        
            url = ("https://cms.api.brightcove.com/v1/accounts/{pubid}/videos/").format(pubid=pub_id)
            data = '{"name": "***VIDEO TITLE HERE***"}'
            r = requests.post(url, headers=headers, data=data)
            return r.json()
        
        def submit_pbi(video_id):
            access_token = get_access_token()
            print access_token
            headers = { 'Authorization': 'Bearer ' + access_token, "Content-Type": "application/json" }
        
            url = ("https://ingest.api.brightcove.com/v1/accounts/{pubid}/videos/{videoid}/ingest-requests").format(pubid=pub_id, videoid=video_id)
            print url
        
            data = '''{
                    "master": { "url": "****SOURCE VIDEO URL HERE***" }
                 }'''
            r = requests.post(url, headers=headers, data=data)
            print r.headers
            return r.json()
        
        v = create_video()
        print v
        print submit_pbi(v['id'])

    Última actualización de la página el 28-09-2020