Início Rápido: Realizar uma pesquisa de notícias com o Python e a API REST da Pesquisa de Notícias do Bing

Aviso

A 30 de outubro de 2020, as APIs de Pesquisa do Bing passaram dos serviços de IA do Azure para os Serviços Pesquisa do Bing. Esta documentação é fornecida apenas para referência. Para obter documentação atualizada, veja 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, veja Criar um recurso de Pesquisa do Bing através do Azure Marketplace.

Utilize este início rápido para efetuar a sua primeira chamada à API de Pesquisa de Notícias do Bing. Esta aplicação Python simples envia uma consulta de pesquisa para a API e processa o resultado JSON.

Embora esta aplicação esteja escrita 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 bloco de notas do Jupyter no MyBinder, selecione o distintivo de enlace de iniciação :

vinculador de iniciação

O código fonte deste exemplo também está disponível no GitHub.

Criar um recurso do Azure

Comece a utilizar a API de Pesquisa de Notícias do Bing ao criar um dos seguintes recursos do Azure:

Pesquisa do Bing recurso v7

  • Disponível através do portal do Azure até eliminar o recurso.
  • Utilize o escalão de preço gratuito para experimentar o serviço e atualize mais tarde para um escalão pago para produção.

Recurso multi-serviço

  • Disponível através do portal do Azure até eliminar o recurso.
  • Utilize a mesma chave e ponto final para as suas aplicações, em vários serviços de IA do Azure.

Criar e inicializar a aplicação

Crie um novo ficheiro Python no seu IDE ou editor favorito e importe o módulo de pedido. Crie variáveis para a sua chave de subscrição, ponto final e termo de pesquisa. Pode utilizar o ponto final global no seguinte código ou utilizar o ponto final de subdomínio personalizado apresentado no portal do Azure do 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 o pedido

Adicione a chave de subscrição a um novo dicionário, utilizando Ocp-Apim-Subscription-Key como 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 um pedido e obter uma resposta

  1. Utilize a biblioteca de pedidos para chamar a API de Pesquisa Visual do Bing com a chave de subscrição e os objetos de dicionário que criou no passo anterior.

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

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

Apresentar os resultados

Estas descrições, em seguida, podem ser compostas numa tabela com a palavra-chave de pesquisa realçada a negrito.

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

Passos seguintes