Поделиться через


Краткое руководство. Поиск новостей с помощью REST API Bing для поиска новостей и Python

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

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

Используйте это краткое руководство, чтобы выполнить вызов API "Поиск новостей Bing". Это простое приложение Python отправляет поисковый запрос к API и обрабатывает результат JSON.

Это приложение создано на языке Python. Но API представляет собой веб-службу на основе REST, совместимую с большинством языков программирования.

Чтобы запустить этот пример кода как записную книжку Jupyter в MyBinder, выберите эмблему запуска Binder:

Запуск Binder

Исходный код этого примера также доступен на GitHub.

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

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

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

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

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

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

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

Создайте файл Python в избранной интегрированной среде разработки или редакторе и импортируйте модуль запроса. Создайте переменные для своего ключа подписки, конечной точки и условия поиска. Вы можете использовать глобальную конечную точку, указанную в коде ниже, или конечную точку личного поддомена, которая отображается на портале Azure для вашего ресурса.

import requests

subscription_key = "your subscription key"
search_term = "Microsoft"
search_url = "https://api.cognitive.microsoft.com/bing/v7.0/news/search"

Создание параметров для запроса

Добавьте ключ подписки в новый словарь, используя Ocp-Apim-Subscription-Key в качестве ключа. Используйте его для параметров поиска.

headers = {"Ocp-Apim-Subscription-Key" : subscription_key}
params  = {"q": search_term, "textDecorations": True, "textFormat": "HTML"}

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

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

    response = requests.get(search_url, headers=headers, params=params)
    response.raise_for_status()
    search_results = json.dumps(response.json())
    
  2. Ознакомьтесь с описаниями статей, содержащимися в ответе API. Он хранится в search_results как объект JSON.

    descriptions = [article["description"] for article in search_results["value"]]
    

Отображение результатов

Эти описания затем можно визуализировать в виде таблицы с ключевым словом поиска, выделенным полужирным шрифтом.

from IPython.display import HTML
rows = "\n".join(["<tr><td>{0}</td></tr>".format(desc)
                  for desc in descriptions])
HTML("<table>"+rows+"</table>")

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