Guida introduttiva: Eseguire una ricerca di notizie con Python e l'API REST Ricerca notizie Bing
Avviso
Il 30 ottobre 2020 le API di Ricerca Bing spostate dai servizi di intelligenza artificiale di Azure ai servizi Ricerca Bing. Questa documentazione viene fornita solo per informazioni di riferimento. Per la documentazione aggiornata, vedere la documentazione dell'API di ricerca Bing. Per istruzioni sulla creazione di nuove risorse di Azure per la ricerca Bing, vedere Creare una risorsa Ricerca Bing tramite la Azure Marketplace.
Usare questa guida di avvio rapido per effettuare la prima chiamata all'API Ricerca notizie Bing. Questa semplice applicazione Python invia una query di ricerca all'API ed elabora il risultato JSON.
Anche se l'applicazione è scritta in Python, l'API è un servizio Web RESTful compatibile con la maggior parte dei linguaggi di programmazione.
Per eseguire questo codice di esempio come Jupyter Notebook in MyBinder, selezionare la notifica di avvio del binder:
Il codice sorgente di questo esempio è disponibile anche in GitHub.
Creare una risorsa di Azure
Per iniziare a usare l'API Ricerca notizie Bing, creare una delle risorse di Azure seguenti:
- 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.
- disponibile tramite il portale di Azure fino a quando la risorsa non viene eliminata.
- Usare la stessa chiave e l'endpoint per le applicazioni in più servizi di intelligenza artificiale di Azure.
Creare e inizializzare l'applicazione
Creare un nuovo file Python nell'ambiente di sviluppo integrato o nell'editor preferito e importare il modulo di richiesta. Creare le variabili per la chiave di sottoscrizione, l'endpoint e il termine di ricerca. È possibile usare l'endpoint globale nel codice seguente o l'endpoint del sottodominio personalizzato visualizzato nel portale di Azure per la risorsa.
import requests
subscription_key = "your subscription key"
search_term = "Microsoft"
search_url = "https://api.cognitive.microsoft.com/bing/v7.0/news/search"
Creare i parametri per la richiesta
Aggiungere la chiave di sottoscrizione a un nuovo dizionario, usando Ocp-Apim-Subscription-Key
come chiave. Eseguire la stessa operazione per i parametri di ricerca.
headers = {"Ocp-Apim-Subscription-Key" : subscription_key}
params = {"q": search_term, "textDecorations": True, "textFormat": "HTML"}
Inviare una richiesta e ottenere una risposta
Usare la libreria di richieste per chiamare l'API Ricerca visiva Bing con la chiave di sottoscrizione e gli oggetti dizionario creati nel passaggio precedente.
response = requests.get(search_url, headers=headers, params=params) response.raise_for_status() search_results = json.dumps(response.json())
Accedere alle descrizioni degli articoli contenuti nella risposta dell'API, archiviata in
search_results
come oggetto JSON.descriptions = [article["description"] for article in search_results["value"]]
Visualizzare i risultati
Si può quindi eseguire il rendering di queste descrizioni come una tabella con la parola chiave di ricerca evidenziata in grassetto.
from IPython.display import HTML
rows = "\n".join(["<tr><td>{0}</td></tr>".format(desc)
for desc in descriptions])
HTML("<table>"+rows+"</table>")