Quickstart: De Bing Video Search-clientbibliotheek gebruiken

Waarschuwing

Op 30 oktober 2020 zijn de Zoeken in Bing API's verplaatst van Azure AI-services naar Zoeken in Bing Services. Deze documentatie is alleen bedoeld ter referentie. Zie de bing zoek-API-documentatie voor bijgewerkte documentatie. Zie Een Zoeken in Bing resource maken via de Azure Marketplace voor instructies voor het maken van nieuwe Azure-resources voor Bing Search.

Gebruik deze quickstart om aan de slag te gaan met de Bing Video Search-clientbibliotheek voor C# om nieuws te zoeken. Hoewel Bing Video Search een REST API heeft die compatibel is met de meeste programmeertalen, biedt de clientbibliotheek een eenvoudige manier om de service in uw toepassingen te integreren. De broncode voor dit voorbeeld is beschikbaar op GitHub met extra aantekeningen en functies.

Vereisten

Als u de Bing Video Search-clientbibliotheek wilt toevoegen aan uw project, selecteert u NuGet-pakketten beheren vanuit Solution Explorer in Visual Studio. Voeg het pakket Microsoft.Azure.CognitiveServices.Search.VideoSearch toe.

Wanneer u het [NuGet Video Search SDK-pakket] installeert, worden ook de volgende afhankelijkheden geïnstalleerd:

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

Een Azure-resource maken

Begin met het gebruik van de Bing Video Search-API door een van de volgende Azure-resources te maken:

Bing Search v7-resource

  • Beschikbaar via de Azure-portal totdat u de resource verwijdert.
  • Gebruik de gratis prijscategorie om de service uit te proberen, en voer later een upgrade uit naar een betaalde categorie voor productie.

Resource voor meerdere services

  • Beschikbaar via de Azure-portal totdat u de resource verwijdert.
  • Gebruik dezelfde sleutel en hetzelfde eindpunt voor uw toepassingen, in meerdere Azure AI-services.

Een project maken en initialiseren

  1. Maak een nieuwe C#-console-oplossing in Visual Studio. Voeg vervolgens de volgende code in het hoofdcodebestand in.

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using Microsoft.Azure.CognitiveServices.Search.VideoSearch;
    using Microsoft.Azure.CognitiveServices.Search.VideoSearch.Models;
    
  2. Start de client door een nieuw ApiKeyServiceClientCredentials-object met uw abonnementssleutel te maken en roep de constructor aan.

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

Een zoekopdracht verzenden en de resultaten verwerken

  1. Gebruik de client om een zoekopdracht te verzenden. Gebruik 'SwiftKey' voor de zoekquery.

    var videoResults = client.Videos.SearchAsync(query: "SwiftKey").Result;
    
  2. Als er resultaten worden geretourneerd, krijgt u de eerste met videoResults.Value[0]. Druk vervolgens de id, de titel en de url van de video af.

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

Volgende stappen

Zie ook

Gebruik deze quickstart om aan de slag te gaan met de Bing Video Search-clientbibliotheek voor Java om nieuws te zoeken. Hoewel Bing Video Search een REST API heeft die compatibel is met de meeste programmeertalen, biedt de clientbibliotheek een eenvoudige manier om de service in uw toepassingen te integreren. De broncode voor dit voorbeeld is beschikbaar op GitHub, met extra aantekeningen en functies.

Vereisten

Een Azure-resource maken

Begin met het gebruik van de Bing Video Search-API door een van de volgende Azure-resources te maken:

Bing Search v7-resource

  • Beschikbaar via de Azure-portal totdat u de resource verwijdert.
  • Gebruik de gratis prijscategorie om de service uit te proberen, en voer later een upgrade uit naar een betaalde categorie voor productie.

Resource voor meerdere services

  • Beschikbaar via de Azure-portal totdat u de resource verwijdert.
  • Gebruik dezelfde sleutel en hetzelfde eindpunt voor uw toepassingen, in meerdere Azure AI-services.

Installeer de afhankelijkheden van de Bing Video Search-clientbibliotheek met behulp van Maven, Gradle of een ander systeem voor afhankelijkheidsbeheer. Het Maven-POM-bestand vereist de volgende declaratie:

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

Een project maken en initialiseren

Maak een nieuw Java-project in uw favoriete IDE of editor en importeer de volgende bibliotheken.

    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; 

Een zoekclient maken

  1. Implementeer de client VideoSearchAPIImpl, die uw API-eindpunt en een exemplaar van de klasse ServiceClientCredentials vereist.

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

    Voer voor het implementeren van ServiceClientCredentials de volgende stappen uit:

    1. overschrijf de functie applyCredentialsFilter(), met een OkHttpClient.Builder-object als parameter.

      //...
      new ServiceClientCredentials() {
              @Override
              public void applyCredentialsFilter(OkHttpClient.Builder builder) {
              //...
              }
      //...
      
    2. Roep binnen applyCredentialsFilter()builder.addNetworkInterceptor() aan. Maak een nieuw Interceptor-object en overschrijf de methode intercept() ervan om een Chain-interceptorobject te nemen.

      //...
      builder.addNetworkInterceptor(
          new Interceptor() {
              @Override
              public Response intercept(Chain chain) throws IOException {
              //...    
              }
          });
      ///...
      
    3. Maak binnen de functie intercept variabelen voor uw aanvraag. Gebruik Request.Builder() om uw aanvraag te maken. Voeg uw abonnementssleutel toe aan de Ocp-Apim-Subscription-Key-header en retourneer chain.proceed() in het aanvraagobject.

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

Een zoekopdracht verzenden en het antwoord ontvangen

  1. Maak een functie met de naam VideoSearch() die uw abonnementssleutel als een tekenreeks neemt. Instantieer de zoekclient die eerder is gemaakt.

    public static void VideoSearch(String subscriptionKey){
        VideoSearchAPIImpl client = VideoSDK.getClient(subscriptionKey);
        //...
    }
    
  2. Verzend binnen VideoSearch() een aanvraag voor het zoeken naar video's met behulp van de client, met SwiftKey als de zoekterm. Als de Video's zoeken-API een resultaat heeft geretourneerd, haalt u het eerste resultaat op en drukt u de id, naam en URL ervan af, samen met het totale aantal video's dat is geretourneerd.

    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. Roep de zoekmethode op vanuit uw hoofdmethode.

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

Volgende stappen

Zie ook

Gebruik deze quickstart om aan de slag te gaan met de Bing Video Search-clientbibliotheek voor JavaScript om nieuws te zoeken. Hoewel Bing Video Search een REST API heeft die compatibel is met de meeste programmeertalen, biedt de clientbibliotheek een eenvoudige manier om de service in uw toepassingen te integreren. De broncode voor dit voorbeeld is te vinden op GitHub. Deze bevat meer aantekeningen en functies.

Vereisten

  • Nieuwste versie van Node.js.
  • De Bing Video Search-SDK voor JavaScript
    • Voer npm install @azure/cognitiveservices-videosearch uit om deze te installeren
  • De klasse CognitiveServicesCredentials van het pakket @azure/ms-rest-azure-js om de client te verifiëren.
    • Voer npm install @azure/ms-rest-azure-js uit om deze te installeren

Een Azure-resource maken

Begin met het gebruik van de Bing Video Search-API door een van de volgende Azure-resources te maken:

Bing Search v7-resource

  • Beschikbaar via de Azure-portal totdat u de resource verwijdert.
  • Gebruik de gratis prijscategorie om de service uit te proberen, en voer later een upgrade uit naar een betaalde categorie voor productie.

Resource voor meerdere services

  • Beschikbaar via de Azure-portal totdat u de resource verwijdert.
  • Gebruik dezelfde sleutel en hetzelfde eindpunt voor uw toepassingen, in meerdere Azure AI-services.

De toepassing maken en initialiseren

  1. Maak een nieuw JavaScript-bestand in uw favoriete IDE of editor en voeg een instructie require() toe voor de Bing Video's zoeken-bibliotheek en CognitiveServicesCredentials-module. Maak een variabele voor uw abonnementssleutel.

    const CognitiveServicesCredentials = require('@azure/ms-rest-azure-js').CognitiveServicesCredentials;
    const VideoSearchAPIClient = require('@azure/cognitiveservices-videosearch');
    
  2. Maak een exemplaar van CognitiveServicesCredentials met uw sleutel. Gebruik deze vervolgens om een exemplaar te maken van de client voor het zoeken van video's.

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

De zoekaanvraag verzenden

  1. Gebruik client.videosOperations.search() om een zoekopdracht te verzenden naar de Bing Video's zoeken-API. Wanneer de lijst met zoekresultaten wordt geretourneerd, gebruikt u .then() om het resultaat op te slaan.

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

Volgende stappen

Zie ook

Gebruik deze quickstart om aan de slag te gaan met de Bing Video Search-clientbibliotheek voor Python om video's te zoeken. Hoewel Bing Video Search een REST API heeft die compatibel is met de meeste programmeertalen, biedt de clientbibliotheek een eenvoudige manier om de service in uw toepassingen te integreren. De broncode voor dit voorbeeld is beschikbaar op GitHub met extra aantekeningen en functies.

Een Azure-resource maken

Begin met het gebruik van de Bing Video Search-API door een van de volgende Azure-resources te maken:

Bing Search v7-resource

  • Beschikbaar via de Azure-portal totdat u de resource verwijdert.
  • Gebruik de gratis prijscategorie om de service uit te proberen, en voer later een upgrade uit naar een betaalde categorie voor productie.

Resource voor meerdere services

  • Beschikbaar via de Azure-portal totdat u de resource verwijdert.
  • Gebruik dezelfde sleutel en hetzelfde eindpunt voor uw toepassingen, in meerdere Azure AI-services.

Vereisten

  • Python 2.x of 3.x
  • De Bing Video Search-clientbibliotheek voor Python

U wordt aangeraden een virtuele Python-omgeving te gebruiken. U kunt een virtuele omgeving installeren en initialiseren met de venv-module. Installeer virtualenv voor Python 2.7 met:

python -m venv mytestenv

Installeer de Bing Video Search-clientbibliotheek met:

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

De toepassing maken en initialiseren

  1. Maak een nieuw Python-bestand in uw favoriete IDE of editor en voeg de volgende importinstructies toe.

    from azure.cognitiveservices.search.videosearch import VideoSearchClient
    from azure.cognitiveservices.search.videosearch.models import VideoPricing, VideoLength, VideoResolution, VideoInsightModule
    from msrest.authentication import CognitiveServicesCredentials
    
  2. Maak een variabele voor uw abonnementssleutel.

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

De zoekclient maken

Maak een instantie van de CognitiveServicesCredentials en instantieer de client:

client = VideoSearchAPI(endpoint, CognitiveServicesCredentials(subscription_key))

Een zoekaanvraag verzenden en een antwoord ontvangen

  1. Gebruik client.videos.search() met uw zoekopdracht om een aanvraag te verzenden naar de Bing Video's zoeken-API en een antwoord terug te krijgen.

    video_result = client.videos.search(query="SwiftKey")
    
  2. Als het antwoord zoekresultaten bevat, haalt u het eerste resultaat op, en geeft u de bijbehorende id, naam en URL weer.

    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..")
    

Volgende stappen

Zie ook