Краткое руководство. Использование клиентской библиотеки Поиска изображений Bing
Предупреждение
30 октября 2020 г. API-интерфейсы Поиск Bing перемещены из служб ИИ Azure в службы Поиск Bing. Эта документация приводится только для справки. Обновленную информацию см. в документации по API Поиска Bing. Инструкции по созданию ресурсов Azure для Поиска MS Bing см. в статье о том, как создать ресурс для Поиска MS Bing с помощью Azure Marketplace.
Воспользуйтесь сведениями из краткого руководства и выполните первый поиск изображения с помощью клиентской библиотеки Поиска изображений Bing.
Эта клиентская библиотека является программой-оболочкой для REST API и обладает такими же возможностями.
Вы создадите приложение C#, которое отправляет запрос на поиск изображения, анализирует ответ JSON и отображает URL-адрес первого возвращенного изображения.
Предварительные требования
- Если используется Windows, любой выпуск Visual Studio 2017 или более поздней версии.
- Если используется macOS или Linux, VS Code с установленным .NET Core.
- Бесплатная подписка Azure.
См. также цены на службы ИИ Azure — API Поиск Bing.
Создайте консольный проект.
Сначала создайте консольное приложение C#.
Создайте консольное решение с именем BingImageSearch в Visual Studio.
Добавьте пакет NuGet для Когнитивного поиска изображений.
- В Обозревателе решений щелкните проект правой кнопкой мыши.
- Выберите Manage NuGet Packages... (Управление пакетами NuGet...).
- Найдите и выберите Microsoft.Azure.CognitiveServices.Search.ImageSearch, а затем установите этот пакет.
Инициализация приложения
Замените все инструкции
using
в Program.cs следующим кодом:using System; using System.Linq; using Microsoft.Azure.CognitiveServices.Search.ImageSearch; using Microsoft.Azure.CognitiveServices.Search.ImageSearch.Models;
В методе
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. Эта библиотека является оболочкой для API и содержит те же функции. Это простое приложение Java отправляет запрос на поиск изображения, анализирует ответ JSON и отображает URL-адрес первого возвращенного изображения.
Предварительные требования
Последняя версия пакета средств разработки Java (JDK).
Установите зависимости клиентской библиотеки Поиска изображений Bing с помощью Maven, Gradle или другой системы управления зависимостями. Для файла POM Maven требуется следующее объявление:
<dependencies>
<dependency>
<groupId>com.microsoft.azure.cognitiveservices</groupId>
<artifactId>azure-cognitiveservices-imagesearch</artifactId>
<version>1.0.1</version>
</dependency>
</dependencies>
Создание и инициализация приложения
Создайте проект 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;
В методе main создайте переменные для ключа подписки и условия поиска. Затем создайте экземпляр клиента API Bing для поиска изображений.
final String subscriptionKey = "COPY_YOUR_KEY_HERE"; String searchTerm = "canadian rockies"; //Image search client BingImageSearchAPI client = BingImageSearchManager.authenticate(subscriptionKey);
Отправка поискового запроса к API
С помощью
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. Эта библиотека является оболочкой для 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
- Чтобы установить его, выполните такую команду.
Создание и инициализация приложения
Создайте новый файл JavaScript в избранной IDE или редакторе и установите строгость, HTTPS и другие требования.
'use strict'; const ImageSearchAPIClient = require('@azure/cognitiveservices-imagesearch'); const CognitiveServicesCredentials = require('@azure/ms-rest-azure-js').CognitiveServicesCredentials;
В главном методе проекта необходимо создать переменные для действующего ключа подписки, после чего результаты поиска изображения и поиск термина будут возвращены 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);
Создание асинхронной вспомогательной функции
Создайте функцию которая будет асинхронно вызывать клиента и возвращать ответ из службы поиска изображений Bing.
// a helper function to perform an async call to the Bing Image Search API const sendQuery = async () => { return await imageSearchApiClient.imagesOperations.search(searchTerm); };
Отправка запроса и обработка ответа
Чтобы проанализировать результаты поиска изображения, полученные в ответе, вызовите вспомогательную функцию и обработайте ее
promise
.Если в ответе содержатся результаты поиска, сохраните первый результат и распечатайте такие сведения, как 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. Эта библиотека является оболочкой для API и содержит те же функции. Это простое приложение Python отправляет запрос на поиск изображения, анализирует ответ JSON и отображает URL-адрес первого возвращенного изображения.
Предварительные требования
Клиентская библиотека Поиска изображений Azure для Python.
- Установка с помощью
pip install azure-cognitiveservices-search-imagesearch
- Установка с помощью
Создание и инициализация приложения
Создайте сценарий Python в избранной интегрированной среде разработки или редакторе и добавьте следующие строки импорта:
from azure.cognitiveservices.search.imagesearch import ImageSearchClient from msrest.authentication import CognitiveServicesCredentials
Создайте переменные для ключа подписки и условия поиска.
subscription_key = "Enter your key here" subscription_endpoint = "Enter your endpoint here" search_term = "canadian rockies"
Создание клиента для поиска изображений
Создайте экземпляр
CognitiveServicesCredentials
и используйте его для создания клиента:client = ImageSearchClient(endpoint=subscription_endpoint, credentials=CognitiveServicesCredentials(subscription_key))
Отправьте поисковой запрос к 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!")