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

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

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

Используйте это краткое руководство, чтобы сделать первый поиск изображений с помощью клиентской библиотеки поиска изображений Bing.

Клиентская библиотека поиска — это оболочка для REST API и содержит те же функции.

Вы создадите приложение C# отправляет запрос поиска изображений, анализирует ответ JSON и отображает URL-адрес возвращаемого первого изображения.

Предпосылки

См. также цены на службы ИИ Azure — API поиска Bing.

Создайте консольный проект

Сначала создайте консольное приложение C#.

  1. Создайте новое консольное решение с именем BingImageSearch в Visual Studio.

  2. Добавление пакета NuGet для поиска когнитивных изображений

    1. Щелкните проект правой кнопкой мыши в обозревателе решений.
    2. Выберите Manage NuGet Packages... (Управление пакетами NuGet...).
    3. Найдите и выберите Microsoft.Azure.CognitiveServices.Search.ImageSearch, а затем установите пакет.

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

  1. Замените все using инструкции в Program.cs следующим кодом:

    using System;
    using System.Linq;
    using Microsoft.Azure.CognitiveServices.Search.ImageSearch;
    using Microsoft.Azure.CognitiveServices.Search.ImageSearch.Models;
    
  2. В методе Main вашего проекта создайте переменные для вашего допустимого ключа подписки, результатов изображений, которые будут возвращены Bing, и поискового запроса. Затем создайте экземпляр клиента поиска изображений с помощью ключа.

    static async Task Main(string[] args)
    {
        //IMPORTANT: replace this variable with your Cognitive Services subscription key
        string subscriptionKey = "ENTER YOUR KEY HERE";
        //stores the image results returned by Bing
        Images imageResults = null;
        // the image search term to be used in the query
        string searchTerm = "canadian rockies";
    
        //initialize the client
        //NOTE: If you're using version 1.2.0 or below for the Bing Image Search client library, 
        // use ImageSearchAPI() instead of ImageSearchClient() to initialize your search client.
    
        var client = new ImageSearchClient(new ApiKeyServiceClientCredentials(subscriptionKey));
    }
    

Отправка поискового запроса с помощью клиента

По-прежнему в методе Main используйте клиент для поиска с текстом запроса:

// make the search request to the Bing Image API, and get the results"
imageResults = await client.Images.SearchAsync(query: searchTerm).Result; //search query

Анализ и просмотр первого результата изображения

Разберите результаты изображения, возвращенные в ответе.

Если ответ содержит результаты поиска, сохраните первый результат и распечатайте некоторые из его сведений.

if (imageResults != null)
{
    //display the details for the first image result.
    var firstImageResult = imageResults.Value.First();
    Console.WriteLine($"\nTotal number of returned images: {imageResults.Value.Count}\n");
    Console.WriteLine($"Copy the following URLs to view these images on your browser.\n");
    Console.WriteLine($"URL to the first image:\n\n {firstImageResult.ContentUrl}\n");
    Console.WriteLine($"Thumbnail URL for the first image:\n\n {firstImageResult.ThumbnailUrl}");
    Console.WriteLine("Press any key to exit ...");
    Console.ReadKey();
}

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

Руководство по одностраничному приложению для поиска изображений Bing

См. также

Используйте это краткое руководство, чтобы сделать первый поиск изображений с помощью клиентской библиотеки поиска изображений Bing, которая является оболочкой для API и содержит те же функции. Это простое приложение Java отправляет запрос поиска изображений, анализирует ответ JSON и отображает URL-адрес возвращаемого первого изображения.

Предпосылки

Последняя версия пакета средств разработки Java (JDK)

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

 <dependencies>
    <dependency>
      <groupId>com.microsoft.azure.cognitiveservices</groupId>
      <artifactId>azure-cognitiveservices-imagesearch</artifactId>
      <version>1.0.1</version>
    </dependency>
 </dependencies>

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

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

    import com.microsoft.azure.cognitiveservices.search.imagesearch.BingImageSearchAPI;
    import com.microsoft.azure.cognitiveservices.search.imagesearch.BingImageSearchManager;
    import com.microsoft.azure.cognitiveservices.search.imagesearch.models.ImageObject;
    import com.microsoft.azure.cognitiveservices.search.imagesearch.models.ImagesModel;
    
  2. В вашем основном методе создайте переменные для вашего ключа подписки и термина поиска. Затем создайте экземпляр клиента поиска изображений Bing.

    final String subscriptionKey = "COPY_YOUR_KEY_HERE";
    String searchTerm = "canadian rockies";
    //Image search client
    BingImageSearchAPI client = BingImageSearchManager.authenticate(subscriptionKey);
    

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

  1. При использовании bingImages().search()отправьте HTTP-запрос, содержащий поисковый запрос. Сохраните ответ в виде ImagesModel.

    ImagesModel imageResults = client.bingImages().search()
                .withQuery(searchTerm)
                .withMarket("en-us")
                .execute();
    

Анализ и просмотр результата

Выполните разбор результатов изображений, возвращенных в ответе. Если ответ содержит результаты поиска, сохраните первый результат и распечатайте его сведения, например URL-адрес эскиза, исходный URL-адрес, а также общее количество возвращаемых изображений.

if (imageResults != null && imageResults.value().size() > 0) {
    // Image results
    ImageObject firstImageResult = imageResults.value().get(0);

    System.out.println(String.format("Total number of images found: %d", imageResults.value().size()));
    System.out.println(String.format("First image thumbnail url: %s", firstImageResult.thumbnailUrl()));
    System.out.println(String.format("First image content url: %s", firstImageResult.contentUrl()));
}
else {
        System.out.println("Couldn't find image results!");
     }

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

Руководство по одностраничному приложению для поиска изображений Bing

См. также

Используйте это краткое руководство, чтобы сделать первый поиск изображений с помощью клиентской библиотеки поиска изображений Bing, которая является оболочкой для API и содержит те же функции. Это простое приложение JavaScript отправляет запрос поиска изображений, анализирует ответ JSON и отображает URL-адрес возвращаемого первого изображения.

Предпосылки

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

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

  1. Создайте новый файл JavaScript в любимой интегрированной среде разработки или редакторе и задайте строгость, https и другие требования.

    'use strict';
    const ImageSearchAPIClient = require('@azure/cognitiveservices-imagesearch');
    const CognitiveServicesCredentials = require('@azure/ms-rest-azure-js').CognitiveServicesCredentials;
    
  2. В основном методе проекта создайте переменные для допустимого ключа подписки, результаты изображения, возвращаемые Bing, и термин поиска. Затем создайте экземпляр клиента поиска изображений с помощью ключа.

    //replace this value with your valid subscription key.
    let serviceKey = "ENTER YOUR KEY HERE";
    
    //the search term for the request
    let searchTerm = "canadian rockies";
    
    //instantiate the image search client
    let credentials = new CognitiveServicesCredentials(serviceKey);
    let imageSearchApiClient = new ImageSearchAPIClient(credentials);
    
    

Создание асинхронной вспомогательной функции

  1. Создайте функцию для асинхронного вызова клиента и верните ответ из службы поиска изображений Bing.

    // a helper function to perform an async call to the Bing Image Search API
    const sendQuery = async () => {
        return await imageSearchApiClient.imagesOperations.search(searchTerm);
    };
    

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

  1. Вызовите вспомогательную функцию и обработайте её результат, чтобы проанализировать результаты изображения, возвращенные в ответе.

    Если ответ содержит результаты поиска, сохраните первый результат и распечатайте его сведения, например URL-адрес эскиза, исходный URL-адрес, а также общее количество возвращаемых изображений.

    sendQuery().then(imageResults => {
        if (imageResults == null) {
        console.log("No image results were found.");
        }
        else {
            console.log(`Total number of images returned: ${imageResults.value.length}`);
            let firstImageResult = imageResults.value[0];
            //display the details for the first image result. After running the application,
            //you can copy the resulting URLs from the console into your browser to view the image.
            console.log(`Total number of images found: ${imageResults.value.length}`);
            console.log(`Copy these URLs to view the first image returned:`);
            console.log(`First image thumbnail url: ${firstImageResult.thumbnailUrl}`);
            console.log(`First image content url: ${firstImageResult.contentUrl}`);
        }
      })
      .catch(err => console.error(err))
    

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

Руководство по одностраничному приложению для поиска изображений Bing

См. также

Используйте это краткое руководство, чтобы сделать первый поиск изображений с помощью клиентской библиотеки поиска изображений Bing, которая является оболочкой для API и содержит те же функции. Это простое приложение Python отправляет запрос поиска изображений, анализирует ответ JSON и отображает URL-адрес возвращаемого первого изображения.

Предпосылки

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

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

    from azure.cognitiveservices.search.imagesearch import ImageSearchClient
    from msrest.authentication import CognitiveServicesCredentials
    
  2. Создайте переменные для ключа подписки и термина поиска.

    subscription_key = "Enter your key here"
    subscription_endpoint = "Enter your endpoint here"
    search_term = "canadian rockies"
    

Создание клиента поиска изображений

  1. Создайте экземпляр CognitiveServicesCredentials и используйте его для создания клиента.

    client = ImageSearchClient(endpoint=subscription_endpoint, credentials=CognitiveServicesCredentials(subscription_key))
    
  2. Отправьте поисковый запрос в API поиска изображений Bing:

    image_results = client.images.search(query=search_term)
    

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

Разбор результатов изображений, возвращенных в ответе.

Если ответ содержит результаты поиска, сохраните первый результат и распечатайте его сведения, например URL-адрес эскиза, исходный URL-адрес, а также общее количество возвращаемых изображений.

if image_results.value:
    first_image_result = image_results.value[0]
    print("Total number of images returned: {}".format(len(image_results.value)))
    print("First image thumbnail url: {}".format(
        first_image_result.thumbnail_url))
    print("First image content url: {}".format(first_image_result.content_url))
else:
    print("No image results returned!")

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

Руководство по одностраничному приложению для поиска изображений Bing

См. также