Hızlı Başlangıç: Bing Video Arama istemci kitaplığını kullanma
Uyarı
30 Ekim 2020'de Bing Arama API'leri Azure yapay zeka hizmetlerinden Bing Arama Hizmetlerine taşındı. Bu belgeler yalnızca başvuru için sağlanır. Güncelleştirilmiş belgeler için Bing arama API'sinin belgelerine bakın. Bing araması için yeni Azure kaynakları oluşturma yönergeleri için bkz. Azure Market aracılığıyla Bing Arama kaynağı oluşturma.
C# için Bing Video Arama istemci kitaplığıyla haber aramaya başlamak için bu hızlı başlangıcı kullanın. Bing Video Arama,çoğu programlama diliyle uyumlu bir REST API'ye sahip olsa da, istemci kitaplığı hizmeti uygulamalarınızla tümleştirmek için kolay bir yol sağlar. Bu örneğin kaynak kodu, ek ek açıklamalar ve özelliklerle GitHub'da bulunabilir.
Önkoşullar
- Visual Studio 2017 veya sonraki sürümleri.
- NuGet paketi olarak kullanılabilen Json.NET çerçevesi.
Bing Video Arama istemci kitaplığını projenize eklemek için Visual Studio'da Çözüm GezginiNuGet Paketlerini Yönet'i seçin. Microsoft.Azure.CognitiveServices.Search.VideoSearch
paketini ekleyin.
[NuGet Video Arama SDK'sı paketi] yüklendiğinde aşağıdaki bağımlılıklar da yüklenir:
- Microsoft.Rest.ClientRuntime
- Microsoft.Rest.ClientRuntime.Azure
- Newtonsoft.Json
Azure kaynağı oluşturma
Aşağıdaki Azure kaynaklarından birini oluşturarak Bing Video Arama API'sini kullanmaya başlayın:
- Kaynağı silene kadar Azure portal aracılığıyla kullanılabilir.
- Hizmeti denemek için ücretsiz fiyatlandırma katmanını kullanın ve daha sonra üretim için ücretli bir katmana yükseltin.
- Kaynağı silene kadar Azure portal aracılığıyla kullanılabilir.
- Birden çok Azure AI hizmeti genelinde uygulamalarınız için aynı anahtarı ve uç noktayı kullanın.
Proje oluşturma ve başlatma
Visual Studio'da yeni bir C# konsol çözümü oluşturun. Ardından aşağıdakileri ana kod dosyasına ekleyin.
using System; using System.Collections.Generic; using System.Linq; using Microsoft.Azure.CognitiveServices.Search.VideoSearch; using Microsoft.Azure.CognitiveServices.Search.VideoSearch.Models;
Abonelik anahtarınızla yeni
ApiKeyServiceClientCredentials
bir nesne oluşturup oluşturucuyu çağırarak istemcinin örneğini oluşturun.var client = new VideoSearchAPI(new ApiKeyServiceClientCredentials("YOUR-ACCESS-KEY"));
Arama isteği gönderme ve sonuçları işleme
Bir arama isteği göndermek için istemciyi kullanın. Arama sorgusu için "SwiftKey" kullanın.
var videoResults = client.Videos.SearchAsync(query: "SwiftKey").Result;
Herhangi bir sonuç döndürüldüyse, ilkini ile
videoResults.Value[0]
alın. Ardından videonun kimliğini, başlığını ve URL'sini yazdırın.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!"); }
Sonraki adımlar
Ayrıca bkz.
Java için Bing Video Arama istemci kitaplığıyla haber aramaya başlamak için bu hızlı başlangıcı kullanın. Bing Video Arama,çoğu programlama diliyle uyumlu bir REST API'ye sahip olsa da, istemci kitaplığı hizmeti uygulamalarınızla tümleştirmek için kolay bir yol sağlar. Bu örneğin kaynak kodu, ek ek açıklamalar ve özelliklerle Birlikte GitHub'da bulunabilir.
Önkoşullar
Azure kaynağı oluşturma
Aşağıdaki Azure kaynaklarından birini oluşturarak Bing Video Arama API'sini kullanmaya başlayın:
- Kaynağı silene kadar Azure portal aracılığıyla kullanılabilir.
- Hizmeti denemek için ücretsiz fiyatlandırma katmanını kullanın ve daha sonra üretim için ücretli bir katmana yükseltin.
- Kaynağı silene kadar Azure portal aracılığıyla kullanılabilir.
- Birden çok Azure AI hizmeti genelinde uygulamalarınız için aynı anahtarı ve uç noktayı kullanın.
Maven, Gradle veya başka bir bağımlılık yönetim sistemi kullanarak Bing Video Arama istemci kitaplığı bağımlılıklarını yükleyin. Maven POM dosyası şu bildirimi gerektirir:
<dependencies>
<dependency>
<groupId>com.microsoft.azure.cognitiveservices</groupId>
<artifactId>azure-cognitiveservices-videosearch</artifactId>
<version>0.0.1-beta-SNAPSHOT</version>
</dependency>
</dependencies>
Proje oluşturma ve başlatma
Sık kullandığınız IDE ortamında veya düzenleyicide yeni bir Java projesi oluşturun ve aşağıdaki kitaplıkları içeri aktarın.
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;
Arama istemcisi oluşturma
VideoSearchAPIImpl
API uç noktanızı ve sınıfının bir örneğini gerektiren istemciyiServiceClientCredentials
uygulayın.public static VideoSearchAPIImpl getClient(final String subscriptionKey) { return new VideoSearchAPIImpl("https://api.cognitive.microsoft.com/bing/v7.0/", new ServiceClientCredentials() { //... } )};
uygulamasını uygulamak
ServiceClientCredentials
için şu adımları izleyin:applyCredentialsFilter()
işlevi, parametre olarak birOkHttpClient.Builder
nesneyle geçersiz kılın.//... new ServiceClientCredentials() { @Override public void applyCredentialsFilter(OkHttpClient.Builder builder) { //... } //...
içinde
applyCredentialsFilter()
çağrısı gerçekleştirinbuilder.addNetworkInterceptor()
. YeniInterceptor
bir nesne oluşturun ve bir kesme noktası nesnesi almakChain
için yöntemini geçersiz kılınintercept()
.//... builder.addNetworkInterceptor( new Interceptor() { @Override public Response intercept(Chain chain) throws IOException { //... } }); ///...
işlevinde
intercept
isteğiniz için değişkenler oluşturun. İsteğinizi oluşturmak için kullanınRequest.Builder()
. Abonelik anahtarınızı üst bilgisineOcp-Apim-Subscription-Key
ekleyin ve istek nesnesine dönünchain.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); } //...
Arama isteği gönderme ve yanıtı alma
Abonelik anahtarınızı dize olarak alan adlı
VideoSearch()
bir işlev oluşturun. Daha önce oluşturulan arama istemcisinin örneğini oluşturun.public static void VideoSearch(String subscriptionKey){ VideoSearchAPIImpl client = VideoSDK.getClient(subscriptionKey); //... }
içinde
VideoSearch()
, arama terimi olarak ile istemcisiniSwiftKey
kullanarak bir video arama isteği gönderin. Video Arama API'si bir sonuç döndürdüyse, ilk sonucu alın ve döndürülen toplam video sayısıyla birlikte kimliğini, adını ve URL'sini yazdırın.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!"); } }
Ana yönteminizden arama yöntemini çağırın.
public static void main(String[] args) { VideoSDK.VideoSearch("YOUR-SUBSCRIPTION-KEY"); }
Sonraki adımlar
Ayrıca bkz.
JavaScript için Bing Video Arama istemci kitaplığıyla haber aramaya başlamak için bu hızlı başlangıcı kullanın. Bing Video Arama,çoğu programlama diliyle uyumlu bir REST API'ye sahip olsa da, istemci kitaplığı hizmeti uygulamalarınızla tümleştirmek için kolay bir yol sağlar. Bu örneğin kaynak kodu GitHub'da bulunabilir. Daha fazla ek açıklama ve özellik içerir.
Önkoşullar
- Node.js'in en son sürümü.
- JavaScript için Bing Video Arama SDK'sı
- Yüklemek için
npm install @azure/cognitiveservices-videosearch
- Yüklemek için
- İstemcinin
CognitiveServicesCredentials
kimliğini doğrulamak için paketten@azure/ms-rest-azure-js
sınıfı.- Yüklemek için
npm install @azure/ms-rest-azure-js
- Yüklemek için
Azure kaynağı oluşturma
Aşağıdaki Azure kaynaklarından birini oluşturarak Bing Video Arama API'sini kullanmaya başlayın:
- Kaynağı silene kadar Azure portal aracılığıyla kullanılabilir.
- Hizmeti denemek için ücretsiz fiyatlandırma katmanını kullanın ve daha sonra üretim için ücretli bir katmana yükseltin.
- Kaynağı silene kadar Azure portal aracılığıyla kullanılabilir.
- Birden çok Azure AI hizmeti genelinde uygulamalarınız için aynı anahtarı ve uç noktayı kullanın.
Uygulamayı oluşturma ve başlatma
Sık kullandığınız IDE veya düzenleyicide yeni bir JavaScript dosyası oluşturun ve Bing Video Arama istemci kitaplığı ve
CognitiveServicesCredentials
modülü için birrequire()
deyim ekleyin. Abonelik anahtarınız için bir değişken oluşturun.const CognitiveServicesCredentials = require('@azure/ms-rest-azure-js').CognitiveServicesCredentials; const VideoSearchAPIClient = require('@azure/cognitiveservices-videosearch');
Anahtarınız ile bir örneği
CognitiveServicesCredentials
oluşturun. Ardından bunu kullanarak video arama istemcisinin bir örneğini oluşturun.let credentials = new CognitiveServicesCredentials('YOUR-ACCESS-KEY'); let client = new VideoSearchAPIClient(credentials);
Arama isteğini gönderme
Bing Video Arama API'sine arama isteği göndermek için kullanın
client.videosOperations.search()
. Arama sonuçları döndürülürken, sonucu günlüğe kaydetmek için kullanın.then()
.client.videosOperations.search('Interstellar Trailer').then((result) => { console.log(result.value); }).catch((err) => { throw err; });
Sonraki adımlar
Ayrıca bkz.
Python için Bing Video Arama istemci kitaplığıyla haber aramaya başlamak için bu hızlı başlangıcı kullanın. Bing Video Arama,çoğu programlama diliyle uyumlu bir REST API'ye sahip olsa da, istemci kitaplığı hizmeti uygulamalarınızla tümleştirmek için kolay bir yol sağlar. Bu örneğin kaynak kodu, ek ek açıklamalar ve özelliklerle GitHub'da bulunabilir.
Azure kaynağı oluşturma
Aşağıdaki Azure kaynaklarından birini oluşturarak Bing Video Arama API'sini kullanmaya başlayın:
- Kaynağı silene kadar Azure portal aracılığıyla kullanılabilir.
- Hizmeti denemek için ücretsiz fiyatlandırma katmanını kullanın ve daha sonra üretim için ücretli bir katmana yükseltin.
- Kaynağı silene kadar Azure portal aracılığıyla kullanılabilir.
- Birden çok Azure AI hizmeti genelinde uygulamalarınız için aynı anahtarı ve uç noktayı kullanın.
Önkoşullar
- Python 2.x veya 3.x
- Python için Bing Video Arama istemci kitaplığı
Python sanal ortamı kullanmanız önerilir. venv modülüyle bir sanal ortam yükleyip başlatabilirsiniz. Python 2.7 için virtualenv'yi aşağıdakilerle yükleyin:
python -m venv mytestenv
Bing Video Arama istemci kitaplığını şu şekilde yükleyin:
cd mytestenv
python -m pip install azure-cognitiveservices-search-videosearch
Uygulamayı oluşturma ve başlatma
Sık kullandığınız IDE veya düzenleyicide yeni bir Python dosyası oluşturun ve aşağıdaki içeri aktarma deyimlerini ekleyin.
from azure.cognitiveservices.search.videosearch import VideoSearchClient from azure.cognitiveservices.search.videosearch.models import VideoPricing, VideoLength, VideoResolution, VideoInsightModule from msrest.authentication import CognitiveServicesCredentials
Abonelik anahtarınız için bir değişken oluşturun.
subscription_key = "YOUR-SUBSCRIPTION-KEY" endpoint = "YOUR-ENDPOINT"
Arama istemcisini oluşturma
CognitiveServicesCredentials
nesnesinin bir örneğini oluşturun ve istemcinin bir örneğini başlatın:
client = VideoSearchAPI(endpoint, CognitiveServicesCredentials(subscription_key))
Arama isteği gönderme ve yanıt alma
Bing Video Arama API'sine istek göndermek ve yanıt almak için arama sorgunuzla birlikte kullanın
client.videos.search()
.video_result = client.videos.search(query="SwiftKey")
Yanıt arama sonuçları içeriyorsa, ilkini alın ve kimliğini, adını ve URL'sini yazdırın.
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..")