Краткое руководство. Использование клиентской библиотеки Поиска видео Bing

Предупреждение

30 октября 2020 г. API Поиск Bing перенесены из служб ИИ Azure в Поиск Bing Services. Эта документация приводится только для справки. Обновленную информацию см. в документации по API Поиска Bing. Инструкции по созданию ресурсов Azure для Поиска Bing приведены в статье Создание ресурса для Поиска Bing с помощью Azure Marketplace.

Используйте это краткое руководство, чтобы начать поиск новостей с помощью клиентской библиотеки Поиск видео Bing для C#. Поскольку REST API Поиска видео Bing совместим с большинством языков программирования, клиентская библиотека обеспечивает простой способ интеграции службы в ваши приложения. Исходный код этого примера можно получить на GitHub с дополнительными возможностями и заметками.

Предварительные требования

Чтобы добавить клиентскую библиотеку API "Поиск видео Bing" в проект, перейдите к параметру Управление пакетами NuGet в обозревателе решений в Visual Studio. Добавьте пакет Microsoft.Azure.CognitiveServices.Search.VideoSearch.

При установке пакета SDK NuGet для Поиска видео также будут установлены следующие зависимости:

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

Создание ресурса Azure

Начните использовать API Поиска видео Bing, создав один из следующих ресурсов Azure.

Ресурс Поиска Bing версии 7

  • доступен на портале Azure до удаления.
  • Используйте бесплатную ценовую категорию, чтобы опробовать службу, а затем выполните обновление до платного уровня для рабочей среды.

Ресурс для нескольких служб

  • доступен на портале Azure до удаления.
  • Используйте один ключ и конечную точку для приложений в нескольких службах ИИ Azure.

Создание и инициализация проекта

  1. Создайте консольное решение C# в Visual Studio. Затем добавьте следующие элементы в основной файл кода.

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using Microsoft.Azure.CognitiveServices.Search.VideoSearch;
    using Microsoft.Azure.CognitiveServices.Search.VideoSearch.Models;
    
  2. Создайте экземпляр клиента путем создания нового объекта ApiKeyServiceClientCredentials с помощью ключа подписки и вызова конструктора.

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

Отправка строки запроса и обработка результатов

  1. Используйте клиент для отправки поискового запроса. В качестве поискового запроса используйте "SwiftKey".

    var videoResults = client.Videos.SearchAsync(query: "SwiftKey").Result;
    
  2. Если были возвращены какие-либо результаты, получите первый из них с помощью videoResults.Value[0]. Затем выполните печать идентификатора, заголовка и URL-адреса видео.

    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!");
    }
    

Дальнейшие действия

См. также раздел

Используйте это краткое руководство, чтобы начать поиск новостей с помощью клиентской библиотеки Поиска видео Bing для Java. Поскольку REST API Поиска видео Bing совместим с большинством языков программирования, клиентская библиотека обеспечивает простой способ интеграции службы в ваши приложения. Исходный код этого примера можно получить на GitHub с дополнительными возможностями и заметками.

Предварительные требования

Создание ресурса Azure

Начните использовать API Поиска видео Bing, создав один из следующих ресурсов Azure.

Ресурс Поиска Bing версии 7

  • доступен на портале Azure до удаления.
  • Используйте бесплатную ценовую категорию, чтобы опробовать службу, а затем выполните обновление до платного уровня для рабочей среды.

Ресурс для нескольких служб

  • доступен на портале Azure до удаления.
  • Используйте один ключ и конечную точку для приложений в нескольких службах ИИ Azure.

Установите зависимости клиентской библиотеки Поиска видео Bing с помощью Maven, Gradle или другой системы управления зависимостями. Для файла POM Maven требуется следующее объявление:

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

Создание и инициализация проекта

Создайте проект Java в любой интегрированной среде разработки или редакторе, а затем импортируйте в него следующие библиотеки.

    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; 

Создание клиента для поиска

  1. Реализуйте клиент VideoSearchAPIImpl, для которого требуется конечная точка API и экземпляр класса ServiceClientCredentials.

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

    Чтобы запустить ServiceClientCredentials, выполните следующие действия.

    1. Переопределите функцию applyCredentialsFilter(), указав в качестве параметра объект OkHttpClient.Builder.

      //...
      new ServiceClientCredentials() {
              @Override
              public void applyCredentialsFilter(OkHttpClient.Builder builder) {
              //...
              }
      //...
      
    2. В рамках applyCredentialsFilter() вызовите builder.addNetworkInterceptor(). Создайте новый объект Interceptor и переопределите его метод intercept(), чтобы получить объект-перехватчик Chain.

      //...
      builder.addNetworkInterceptor(
          new Interceptor() {
              @Override
              public Response intercept(Chain chain) throws IOException {
              //...    
              }
          });
      ///...
      
    3. В рамках функции intercept создайте переменные для вашего запроса. Используйте Request.Builder(), чтобы создать запрос. Добавьте ключ подписки к заголовку Ocp-Apim-Subscription-Key и верните chain.proceed() в объекте запроса.

      //...
      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);
      }
      //...
      

Отправка поискового запроса и получение ответа

  1. Создайте функцию с именем VideoSearch(), принимающую ключ подписки в виде строки. Создайте экземпляр для созданного ранее клиента поиска.

    public static void VideoSearch(String subscriptionKey){
        VideoSearchAPIImpl client = VideoSDK.getClient(subscriptionKey);
        //...
    }
    
  2. В рамках VideoSearch() отправьте запрос поиска видео с помощью клиента, указав SwiftKey в качестве поискового запроса. Если API Bing для поиска видео вернул результат, получите первый результат и напечатайте его идентификатор, имя и URL-адрес, а также общее количество возвращенных видео.

    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. Вызовите метод поиска из метода main.

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

Дальнейшие действия

См. также раздел

Используйте это краткое руководство, чтобы начать поиск новостей с помощью клиентской библиотеки Поиска видео Bing для JavaScript. Поскольку REST API Поиска видео Bing совместим с большинством языков программирования, клиентская библиотека обеспечивает простой способ интеграции службы в ваши приложения. Исходный код для этого шаблона можно найти на портале GitHub. Он содержит больше аннотаций и функций.

Предварительные требования

  • Последняя версия Node.js.
  • Пакет SDK для Поиска видео Bing для JavaScript.
    • Чтобы установить его, выполните такую команду. npm install @azure/cognitiveservices-videosearch
  • Класс CognitiveServicesCredentials из пакета @azure/ms-rest-azure-js для аутентификации клиента.
    • Чтобы установить его, выполните такую команду. npm install @azure/ms-rest-azure-js

Создание ресурса Azure

Начните использовать API Поиска видео Bing, создав один из следующих ресурсов Azure.

Ресурс Поиска Bing версии 7

  • доступен на портале Azure до удаления.
  • Используйте бесплатную ценовую категорию, чтобы опробовать службу, а затем выполните обновление до платного уровня для рабочей среды.

Ресурс для нескольких служб

  • доступен на портале Azure до удаления.
  • Используйте один ключ и конечную точку для приложений в нескольких службах ИИ Azure.

Создание и инициализация приложения

  1. Создайте файл JavaScript в избранной интегрированной среде разработки или редакторе и добавьте оператор require() для клиентской библиотеки Поиска видео Bing и модуль CognitiveServicesCredentials. Создайте переменную для ключа подписки.

    const CognitiveServicesCredentials = require('@azure/ms-rest-azure-js').CognitiveServicesCredentials;
    const VideoSearchAPIClient = require('@azure/cognitiveservices-videosearch');
    
  2. Создайте экземпляр CognitiveServicesCredentials с помощью ключа. Затем используйте его для создания экземпляра клиента для поиска видео.

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

Отправка поискового запроса

  1. Используйте client.videosOperations.search() для отправки поискового запроса к API Поиска видео Bing. При возврате результатов поиска используйте .then() для записи результата в журнал.

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

Дальнейшие действия

См. также раздел

Используйте это краткое руководство, чтобы начать поиск новостей с помощью клиентской библиотеки Поиска видео Bing для Python. Поскольку REST API Поиска видео Bing совместим с большинством языков программирования, клиентская библиотека обеспечивает простой способ интеграции службы в ваши приложения. Исходный код этого примера можно получить на GitHub с дополнительными возможностями и заметками.

Создание ресурса Azure

Начните использовать API Поиска видео Bing, создав один из следующих ресурсов Azure.

Ресурс Поиска Bing версии 7

  • доступен на портале Azure до удаления.
  • Используйте бесплатную ценовую категорию, чтобы опробовать службу, а затем выполните обновление до платного уровня для рабочей среды.

Ресурс для нескольких служб

  • доступен на портале Azure до удаления.
  • Используйте один ключ и конечную точку для приложений в нескольких службах ИИ Azure.

Предварительные требования

  • Python 2.x или 3.x.
  • Клиентская библиотека Поиска видео Bing для python

Мы советуем использовать виртуальное окружение Python. Вы можете установить и инициализировать виртуальное окружение с помощью модуля venv. Установите virtualenv для Python 2.7 с помощью команды:

python -m venv mytestenv

Установите клиентскую библиотеку Поиска видео Bing с помощью следующей команды:

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

Создание и инициализация приложения

  1. Создайте файл Python в любой интегрированной среде разработки или редакторе и добавьте следующие инструкции импорта.

    from azure.cognitiveservices.search.videosearch import VideoSearchClient
    from azure.cognitiveservices.search.videosearch.models import VideoPricing, VideoLength, VideoResolution, VideoInsightModule
    from msrest.authentication import CognitiveServicesCredentials
    
  2. Создайте переменную для ключа подписки.

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

Создание клиента для поиска

Создайте экземпляр CognitiveServicesCredentials, а затем создайте экземпляр клиента:

client = VideoSearchAPI(endpoint, CognitiveServicesCredentials(subscription_key))

Отправка поискового запроса и получение ответа

  1. Используйте client.videos.search() в поисковом запросе, чтобы отправить запрос в API Поиска видео Bing и получить ответ.

    video_result = client.videos.search(query="SwiftKey")
    
  2. Если ответ содержит результаты поиска, извлеките первый и выведите его идентификатор, имя и 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..")
    

Дальнейшие действия

См. также раздел