Inicio rápido: Uso de la biblioteca cliente de Bing Video Search

Advertencia

El 30 de octubre de 2020, las API de Bing Search se trasladaron de los servicios de Azure AI a los servicios de Bing Search. Esta documentación se proporciona solo como referencia. Para obtener documentación actualizada, consulte la documentación de Bing Search API. Para obtener instrucciones sobre cómo crear nuevos recursos de Azure para Bing Search, consulte el artículo sobre la creación de un recurso de Bing Search a través de Azure Marketplace.

Use este artículo de inicio rápido para empezar a buscar vídeos con la biblioteca cliente de Bing Video Search para C#. Aunque Bing Video Search tiene una API REST compatible con la mayoría de los lenguajes de programación, la biblioteca cliente proporciona una forma sencilla de integrar el servicio en sus aplicaciones. El código fuente de este ejemplo está disponible en GitHub con anotaciones adicionales y características.

Requisitos previos

Para agregar la biblioteca cliente de Bing Video Search al proyecto, seleccione Administrar paquetes NuGet en el Explorador de soluciones en Visual Studio. Agregue el paquete Microsoft.Azure.CognitiveServices.Search.VideoSearch.

La instalación del [paquete del SDK de NuGet Video Search] también instala las dependencias siguientes:

  • Microsoft.Rest.ClientRuntime
  • Microsoft.Rest.ClientRuntime.Azure
  • Newtonsoft.Json

Creación de un recurso de Azure

Comience a usar la API Bing Video Search mediante la creación de uno de los recursos de Azure que se indican a continuación:

Recurso de Bing Search v7

  • Disponible en Azure Portal hasta que lo elimine.
  • Use el plan de tarifa gratuito para probar el servicio y actualícelo más adelante a un nivel de pago para producción.

Recurso de varios servicios

  • Disponible en Azure Portal hasta que lo elimine.
  • Utilice la misma clave y el mismo punto de conexión para sus aplicaciones en varios servicios de Azure AI.

Creación e inicialización de un proyecto

  1. Cree una solución de consola de C# en Visual Studio. Después, agregue lo siguiente en el archivo de código principal.

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using Microsoft.Azure.CognitiveServices.Search.VideoSearch;
    using Microsoft.Azure.CognitiveServices.Search.VideoSearch.Models;
    
  2. Cree una instancia del cliente, para lo que debe crear un nuevo objeto ApiKeyServiceClientCredentials con su clave de suscripción y llamar al constructor.

    var client = new VideoSearchAPI(new ApiKeyServiceClientCredentials("YOUR-ACCESS-KEY"));
    

Envío de una solicitud de búsqueda y procesamiento de los resultados

  1. Use el cliente para enviar una solicitud de búsqueda. Use "SwiftKey" para la consulta de búsqueda.

    var videoResults = client.Videos.SearchAsync(query: "SwiftKey").Result;
    
  2. Si se devuelven resultados, obtenga el primera de ellos con videoResults.Value[0]. A continuación, imprima el identificador, el título y la dirección URL del vídeo.

    if (videoResults.Value.Count > 0)
    {
        var firstVideoResult = videoResults.Value[0];
    
        Console.WriteLine($"\r\nVideo result count: {videoResults.Value.Count}");
        Console.WriteLine($"First video id: {firstVideoResult.VideoId}");
        Console.WriteLine($"First video name: {firstVideoResult.Name}");
        Console.WriteLine($"First video url: {firstVideoResult.ContentUrl}");
    }
    else
    {
        Console.WriteLine("Couldn't find video results!");
    }
    

Pasos siguientes

Consulte también

Use este artículo de inicio rápido para empezar a buscar vídeos con la biblioteca cliente de Bing Video Search para Java. Aunque Bing Video Search tiene una API REST compatible con la mayoría de los lenguajes de programación, la biblioteca cliente proporciona una forma sencilla de integrar el servicio en sus aplicaciones. El código fuente de este ejemplo está disponible en GitHub con anotaciones adicionales y características.

Requisitos previos

Creación de un recurso de Azure

Comience a usar la API Bing Video Search mediante la creación de uno de los recursos de Azure que se indican a continuación:

Recurso de Bing Search v7

  • Disponible en Azure Portal hasta que lo elimine.
  • Use el plan de tarifa gratuito para probar el servicio y actualícelo más adelante a un nivel de pago para producción.

Recurso de varios servicios

  • Disponible en Azure Portal hasta que lo elimine.
  • Utilice la misma clave y el mismo punto de conexión para sus aplicaciones en varios servicios de Azure AI.

Instale las dependencias de la biblioteca cliente de Bing Video Search mediante Maven, Gradle o cualquier otro sistema de administración de dependencias. El archivo POM de Maven requiere la declaración siguiente:

  <dependencies>
    <dependency>
      <groupId>com.microsoft.azure.cognitiveservices</groupId>
      <artifactId>azure-cognitiveservices-videosearch</artifactId>
      <version>0.0.1-beta-SNAPSHOT</version>
    </dependency>
  </dependencies> 

Creación e inicialización de un proyecto

Cree un proyecto de Java en su IDE o editor favorito e importe las bibliotecas siguientes.

    import com.microsoft.azure.cognitiveservices.videosearch.*;
    import com.microsoft.azure.cognitiveservices.videosearch.VideoObject;
    import com.microsoft.rest.credentials.ServiceClientCredentials;
    import okhttp3.Interceptor;
    import okhttp3.OkHttpClient;
    import okhttp3.Request;
    import okhttp3.Response;
    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.List; 

Creación de un cliente de búsqueda

  1. Implemente el cliente VideoSearchAPIImpl, lo que requiere un punto de conexión de API y una instancia de la clase ServiceClientCredentials.

    public static VideoSearchAPIImpl getClient(final String subscriptionKey) {
        return new VideoSearchAPIImpl("https://api.cognitive.microsoft.com/bing/v7.0/",
                new ServiceClientCredentials() {
                //...
                }
    )};
    

    Para implementar ServiceClientCredentials, siga estos pasos:

    1. Reemplace la función applyCredentialsFilter() por un objeto OkHttpClient.Builder como parámetro.

      //...
      new ServiceClientCredentials() {
              @Override
              public void applyCredentialsFilter(OkHttpClient.Builder builder) {
              //...
              }
      //...
      
    2. Dentro de applyCredentialsFilter(), llame a builder.addNetworkInterceptor(). Cree un nuevo objeto Interceptor e invalide su método intercept() para tomar un objeto interceptor Chain.

      //...
      builder.addNetworkInterceptor(
          new Interceptor() {
              @Override
              public Response intercept(Chain chain) throws IOException {
              //...    
              }
          });
      ///...
      
    3. Dentro de la función intercept, cree variables para su solicitud. Use Request.Builder() para compilar su solicitud. Agregue su clave de suscripción al encabezado Ocp-Apim-Subscription-Key y devuelva chain.proceed() en el objeto de solicitud.

      //...
      public Response intercept(Chain chain) throws IOException {
          Request request = null;
          Request original = chain.request();
          Request.Builder requestBuilder = original.newBuilder()
                  .addHeader("Ocp-Apim-Subscription-Key", subscriptionKey);
          request = requestBuilder.build();
          return chain.proceed(request);
      }
      //...
      

Envío de una solicitud de búsqueda y recepción de la respuesta

  1. Cree una función denominada VideoSearch() que tome su clave de suscripción como una cadena. Cree una instancia del cliente de búsqueda creado anteriormente.

    public static void VideoSearch(String subscriptionKey){
        VideoSearchAPIImpl client = VideoSDK.getClient(subscriptionKey);
        //...
    }
    
  2. Dentro de VideoSearch(), envíe una solicitud de búsqueda de vídeo con el cliente, con SwiftKey como término de búsqueda. Si Video Search API devuelve resultados, obtenga el primer resultado e imprima su identificador, nombre y dirección URL, junto con el número total de vídeos devueltos.

    VideosInner videoResults = client.searchs().list("SwiftKey");
    
    if (videoResults == null){
        System.out.println("Didn't see any video result data..");
    }
    else{
        if (videoResults.value().size() > 0){
            VideoObject firstVideoResult = videoResults.value().get(0);
    
            System.out.println(String.format("Video result count: %d", videoResults.value().size()));
            System.out.println(String.format("First video id: %s", firstVideoResult.videoId()));
            System.out.println(String.format("First video name: %s", firstVideoResult.name()));
            System.out.println(String.format("First video url: %s", firstVideoResult.contentUrl()));
        }
        else{
            System.out.println("Couldn't find video results!");
        }
    }
    
  3. Llame al método search desde su método main.

    public static void main(String[] args) {
        VideoSDK.VideoSearch("YOUR-SUBSCRIPTION-KEY");
    }
    

Pasos siguientes

Consulte también

Use este artículo de inicio rápido para empezar a buscar vídeos con la biblioteca cliente de Bing Video Search para JavaScript. Aunque Bing Video Search tiene una API REST compatible con la mayoría de los lenguajes de programación, la biblioteca cliente proporciona una forma sencilla de integrar el servicio en sus aplicaciones. El código fuente de este ejemplo está disponible en GitHub. Contiene más anotaciones y características.

Prerrequisitos

  • La última versión de Node.js.
  • El SDK de Bing Video Search para JavaScript.
    • Para instalarlo, ejecute npm install @azure/cognitiveservices-videosearch.
  • La clase CognitiveServicesCredentials del paquete @azure/ms-rest-azure-js para autenticar el cliente.
    • Para instalarlo, ejecute npm install @azure/ms-rest-azure-js.

Creación de un recurso de Azure

Comience a usar la API Bing Video Search mediante la creación de uno de los recursos de Azure que se indican a continuación:

Recurso de Bing Search v7

  • Disponible en Azure Portal hasta que lo elimine.
  • Use el plan de tarifa gratuito para probar el servicio y actualícelo más adelante a un nivel de pago para producción.

Recurso de varios servicios

  • Disponible en Azure Portal hasta que lo elimine.
  • Utilice la misma clave y el mismo punto de conexión para sus aplicaciones en varios servicios de Azure AI.

Creación e inicialización de la aplicación

  1. Cree un archivo JavaScript en el editor o el IDE que prefiera y añada una instrucción require() a la biblioteca cliente de Bing Video Search y al módulo CognitiveServicesCredentials. Cree una variable para la clave de suscripción.

    const CognitiveServicesCredentials = require('@azure/ms-rest-azure-js').CognitiveServicesCredentials;
    const VideoSearchAPIClient = require('@azure/cognitiveservices-videosearch');
    
  2. Cree una instancia de CognitiveServicesCredentials con su clave. A continuación, utilícela para crear una instancia del cliente de búsqueda de vídeo.

    let credentials = new CognitiveServicesCredentials('YOUR-ACCESS-KEY');
    let client = new VideoSearchAPIClient(credentials);
    

Envío de la solicitud de búsqueda

  1. Use client.videosOperations.search() para enviar una solicitud de búsqueda a Bing Video Search API. Cuando se devuelvan los resultados de búsqueda, utilice .then() para registrar el resultado.

    client.videosOperations.search('Interstellar Trailer').then((result) => {
        console.log(result.value);
    }).catch((err) => {
        throw err;
    });
    

Pasos siguientes

Consulte también

Use este artículo de inicio rápido para empezar a buscar vídeos con la biblioteca cliente de Bing Video Search para Python. Aunque Bing Video Search tiene una API REST compatible con la mayoría de los lenguajes de programación, la biblioteca cliente proporciona una forma sencilla de integrar el servicio en sus aplicaciones. El código fuente de este ejemplo está disponible en GitHub con anotaciones adicionales y características.

Creación de un recurso de Azure

Comience a usar la API Bing Video Search mediante la creación de uno de los recursos de Azure que se indican a continuación:

Recurso de Bing Search v7

  • Disponible en Azure Portal hasta que lo elimine.
  • Use el plan de tarifa gratuito para probar el servicio y actualícelo más adelante a un nivel de pago para producción.

Recurso de varios servicios

  • Disponible en Azure Portal hasta que lo elimine.
  • Utilice la misma clave y el mismo punto de conexión para sus aplicaciones en varios servicios de Azure AI.

Prerrequisitos

  • Python 2.x o 3.x
  • La biblioteca cliente de Bing Video Search para Python

Se recomienda utilizar un entorno virtual de Python. Puede instalar e inicializar un entorno virtual con el módulo venv. Instale virtualenv para Python 2.7 con:

python -m venv mytestenv

Instale la biblioteca cliente de Bing Video Search mediante:

cd mytestenv
python -m pip install azure-cognitiveservices-search-videosearch

Creación e inicialización de la aplicación

  1. Cree un archivo de Python en el IDE o editor que prefiera y agregue las siguientes instrucciones de importación.

    from azure.cognitiveservices.search.videosearch import VideoSearchClient
    from azure.cognitiveservices.search.videosearch.models import VideoPricing, VideoLength, VideoResolution, VideoInsightModule
    from msrest.authentication import CognitiveServicesCredentials
    
  2. Cree una variable para la clave de suscripción.

    subscription_key = "YOUR-SUBSCRIPTION-KEY"
    endpoint = "YOUR-ENDPOINT"
    

Creación del cliente de búsqueda

Cree una instancia de la CognitiveServicesCredentials y una instancia del cliente:

client = VideoSearchAPI(endpoint, CognitiveServicesCredentials(subscription_key))

Envío de una solicitud de búsqueda y obtención de una respuesta

  1. Use client.videos.search() con la consulta de búsqueda para enviar una solicitud a Bing Video Search API y obtener una respuesta.

    video_result = client.videos.search(query="SwiftKey")
    
  2. Si la respuesta contiene resultados de búsqueda, obtenga el primero de ellos e imprima su identificador, nombre y dirección URL.

    if video_result.value:
        first_video_result = video_result.value[0]
        print("Video result count: {}".format(len(video_result.value)))
        print("First video id: {}".format(first_video_result.video_id))
        print("First video name: {}".format(first_video_result.name))
        print("First video url: {}".format(first_video_result.content_url))
    else:
        print("Didn't see any video result data..")
    

Pasos siguientes

Consulte también