Compartilhar via


Início Rápido: Executar uma pesquisa de notícias usando Python e a API REST de Pesquisa de Notícias do Bing

Aviso

Em 30 de outubro de 2020, as APIs de Pesquisa do Bing foram migradas dos serviços de IA do Azure para os Serviços de Pesquisa do Bing. Esta documentação é fornecida apenas para referência. Para obter a documentação atualizada, consulte a documentação da API de pesquisa do Bing. Para obter instruções sobre como criar novos recursos do Azure para a Pesquisa do Bing, consulte Criar um recurso de Pesquisa do Bing por meio do Azure Marketplace.

Use este início rápido para fazer sua primeira chamada à API da Pesquisa de Notícias do Bing. Este aplicativo Python simples envia uma consulta de pesquisa para a API e processa o resultado JSON.

Embora esse aplicativo seja escrito em Python, a API é um serviço Web RESTful compatível com a maioria das linguagens de programação.

Para executar este exemplo de código como um notebook Jupyter em MyBinder, selecione a notificação iniciar associador:

iniciar associador

O código-fonte dessa amostra também está disponível no GitHub.

Criar um recurso do Azure

Comece usando a API de Pesquisa de Notícias do Bing criando um dos seguintes recursos do Azure:

Recurso de Pesquisa do Bing v7

  • Disponível por meio do portal do Azure até que você exclua o recurso.
  • Use o tipo de preço gratuito para experimentar o serviço e atualize mais tarde para uma camada paga para produção.

Recurso de vários serviços

  • Disponível por meio do portal do Azure até que você exclua o recurso.
  • Use a mesma chave e ponto de extremidade para seus aplicativos nos vários serviços de IA do Azure.

Criar e inicializar o aplicativo

Crie um arquivo do Python em seu IDE ou editor favorito e importe o módulo de solicitação. Crie variáveis para a chave de assinatura, um ponto de extremidade e um termo de pesquisa. É possível usar o ponto de extremidade global no código a seguir ou o ponto de extremidade do subdomínio personalizado exibido no portal do Azure para seu recurso.

import requests

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

Criar parâmetros para a solicitação

Adicione a chave de assinatura a um novo dicionário usando Ocp-Apim-Subscription-Key como a chave. Faça o mesmo para os parâmetros de pesquisa.

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

Enviar uma solicitação e obter uma resposta

  1. Use a biblioteca de solicitações para chamar a API da Pesquisa Visual do Bing com sua chave de assinatura e os objetos de dicionário criados na etapa anterior.

    response = requests.get(search_url, headers=headers, params=params)
    response.raise_for_status()
    search_results = json.dumps(response.json())
    
  2. Acesse as descrições dos artigos contidos na resposta da API, que é armazenada em search_results como um objeto JSON.

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

Exibir os resultados

Essas descrições podem então ser renderizadas como uma tabela com a palavra-chave de pesquisa realçada em negrito.

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

Próximas etapas