Guida introduttiva: usare Python per chiamare l'API Ricerca Web Bing

Avviso

Il 30 ottobre 2020 le API Ricerca Bing sono state spostate dai servizi di intelligenza artificiale di Azure ai servizi di Ricerca Bing. Questa documentazione viene fornita solo per riferimento. Per la documentazione aggiornata, vedere la documentazione dell'API ricerca Bing. Per istruzioni sulla creazione di nuove risorse di Azure per la ricerca Bing, vedere Creare una risorsa Ricerca Bing tramite il Azure Marketplace.

Usare questa guida di avvio rapido per effettuare la prima chiamata all'API Ricerca Web Bing. Questa applicazione Python invia una richiesta di ricerca all'API e visualizza la risposta JSON. Anche se l'applicazione è scritta in Python, l'API è un servizio Web RESTful compatibile con la maggior parte dei linguaggi di programmazione.

Questo esempio viene eseguito come notebook di Jupyter su MyBinder. Per eseguirlo, selezionare la notifica di avvio del binder:

Binder

Prerequisiti

Creare una risorsa di Azure

Per iniziare a usare l'API Ricerca Web Bing, creare una delle seguenti risorse di Azure:

Risorsa Ricerca Bing v7

  • disponibile tramite il portale di Azure fino a quando la risorsa non viene eliminata.
  • Usare il piano tariffario gratuito per provare il servizio ed eseguire in un secondo momento l'aggiornamento a un livello a pagamento per la produzione.

Risorsa multi-servizio

  • disponibile tramite il portale di Azure fino a quando la risorsa non viene eliminata.
  • Usare la stessa chiave e lo stesso endpoint per le applicazioni in più servizi di intelligenza artificiale di Azure.

Definire le variabili

  1. Sostituire il valore di subscription_key con una chiave di sottoscrizione valida del proprio account Azure.

    subscription_key = "YOUR_ACCESS_KEY"
    assert subscription_key
    
  2. Dichiarare l'endpoint dell'API Ricerca Web Bing. È possibile usare l'endpoint globale nel codice seguente o l'endpoint del sottodominio personalizzato visualizzato nel portale di Azure per la risorsa.

    search_url = "https://api.bing.microsoft.com/v7.0/search"
    
  3. Se si vuole, personalizzare la query di ricerca sostituendo il valore di search_term.

    search_term = "Azure Cognitive Services"
    

Effettuare una richiesta

Questo codice usa la libreria requests per chiamare l'API Ricerca Web Bing e restituire i risultati come oggetto JSON. La chiave API viene passata nel dizionario headers, mentre il termine di ricerca e i parametri della query vengono passati nel dizionario params.

Per un elenco completo di opzioni e parametri, vedere API Ricerca Web Bing 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()

Formattare e visualizzare la risposta

L'oggetto search_results contiene i risultati della ricerca e metadati come le pagine e le query correlate. Questo codice usa la libreria IPython.display per formattare e visualizzare la risposta nel 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))

Codice di esempio su GitHub

Per eseguire questo codice in locale, vedere l'intero esempio disponibile su GitHub.

Passaggi successivi

Vedere anche