Início rápido: Utilizar o Python para chamar a API de Pesquisa na Web do BingQuickstart: Use Python to call the Bing Web Search API

Aviso

As APIs de Pesquisa de Bing estão a mover-se dos Serviços Cognitivos para os Serviços de Pesquisa Bing.Bing Search APIs are moving from Cognitive Services to Bing Search Services. A partir de 30 de outubro de 2020, quaisquer novos casos de Bing Search devem ser adquir-se na sequência do processo aquidocumentado.Starting October 30, 2020, any new instances of Bing Search need to be provisioned following the process documented here. Bing Search APIs aforados usando Serviços Cognitivos será suportado durante os próximos três anos ou até o final do seu Contrato de Empresa, o que acontecer primeiro.Bing Search APIs provisioned using Cognitive Services will be supported for the next three years or until the end of your Enterprise Agreement, whichever happens first. Para obter instruções de migração, consulte os Serviços de Busca Bing.For migration instructions, see Bing Search Services.

Use este quickstart para fazer a sua primeira chamada para a API de Pesquisa web Bing.Use this quickstart to make your first call to the Bing Web Search API. Esta aplicação Python envia um pedido de pesquisa à API, e mostra a resposta JSON.This Python application sends a search request to the API, and shows the JSON response. 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.Although this application is written in Python, the API is a RESTful Web service compatible with most programming languages.

Este exemplo é executado como um bloco de notas do Jupyter no MyBinder.This example is run as a Jupyter notebook on MyBinder. Para executá-lo, selecione o crachá de encaixe de lançamento:To run it, select the launch binder badge:

EncadernaçãoBinder

Pré-requisitosPrerequisites

Criar um recurso AzureCreate an Azure resource

Comece a utilizar a API de Pesquisa Web Bing, criando um dos seguintes recursos Azure:Start using the Bing Web Search API by creating one of the following Azure resources:

Bing Search v7 recursoBing Search v7 resource

  • Disponível através do portal Azure até eliminar o recurso.Available through the Azure portal until you delete the resource.
  • Use o nível de preços gratuitos para experimentar o serviço e atualize mais tarde para um nível pago para produção.Use the free pricing tier to try the service, and upgrade later to a paid tier for production.

Recurso multi-serviçoMulti-service resource

  • Disponível através do portal Azure até eliminar o recurso.Available through the Azure portal until you delete the resource.
  • Use a mesma chave e ponto final para as suas aplicações, através de vários Serviços Cognitivos.Use the same key and endpoint for your applications, across multiple Cognitive Services.

Definir variáveisDefine variables

  1. Substitua o valor subscription_key por uma chave de subscrição válida da sua conta do Azure.Replace the subscription_key value with a valid subscription key from your Azure account.

    subscription_key = "YOUR_ACCESS_KEY"
    assert subscription_key
    
  2. Declarar o ponto final da API de Pesquisa na Web do Bing.Declare the Bing Web Search API endpoint. Pode utilizar o ponto final global no seguinte código ou utilizar o ponto final de subdomínio personalizado apresentado no portal Azure para o seu recurso.You can use the global endpoint in the following code, or use the custom subdomain endpoint displayed in the Azure portal for your resource.

    search_url = "https://api.cognitive.microsoft.com/bing/v7.0/search"
    
  3. Opcionalmente, personalize a consulta de pesquisa substituindo o valor de search_term .Optionally, customize the search query by replacing the value for search_term.

    search_term = "Azure Cognitive Services"
    

Fazer um pedidoMake a request

Este código utiliza a requests biblioteca para ligar para a API de Pesquisa web Bing e devolver os resultados como um objeto JSON.This code uses the requests library to call the Bing Web Search API and return the results as a JSON object. A chave de API é passada no dicionário headers e os parâmetros de consulta e o termo de pesquisa são passados no dicionário params.The API key is passed in the headers dictionary, and the search term and query parameters are passed in the params dictionary.

Para obter uma lista completa de opções e parâmetros, consulte bing Web Search API v7.For a complete list of options and parameters, see Bing Web Search API v7.

import requests

headers = {"Ocp-Apim-Subscription-Key": subscription_key}
params = {"q": search_term, "textDecorations": True, "textFormat": "HTML"}
response = requests.get(search_url, headers=headers, params=params)
response.raise_for_status()
search_results = response.json()

Formatar e apresentar a respostaFormat and display the response

O search_results objeto inclui os resultados da pesquisa, e metadados como consultas e páginas relacionadas.The search_results object includes the search results, and such metadata as related queries and pages. Este código utiliza a biblioteca IPython.display para formatar e apresentar a resposta no seu browser.This code uses the IPython.display library to format and display the response in your browser.

from IPython.display import HTML

rows = "\n".join(["""<tr>
                       <td><a href=\"{0}\">{1}</a></td>
                       <td>{2}</td>
                     </tr>""".format(v["url"], v["name"], v["snippet"])
                  for v in search_results["webPages"]["value"]])
HTML("<table>{0}</table>".format(rows))

Código de amostra no GitHubSample code on GitHub

Para executar este código localmente, consulte a amostra completa disponível no GitHub.To run this code locally, see the complete sample available on GitHub.

Passos seguintesNext steps

Ver tambémSee also