Schnellstart: Verwenden von Python zum Aufrufen der Bing-Websuche-API

Warnung

Am 30. Oktober 2020 wurden die Bing-Suche-APIs aus den Azure KI Services in die Bing-Suchdienste verschoben. Diese Dokumentation wird nur zu Referenzzwecken bereitgestellt. Eine aktualisierte Dokumentation finden Sie in der Dokumentation zu den Bing-Suche-APIs. Anweisungen zum Erstellen neuer Azure-Ressourcen für die Bing-Suche finden Sie unter Erstellen einer Ressource für die Bing-Suche über Azure Marketplace.

Verwenden Sie diese Schnellstartanleitung, um die Bing-Websuche-API zum ersten Mal aufzurufen. Diese Python-Anwendung sendet eine Suchanforderung an die API und zeigt die JSON-Antwort an. Die Anwendung ist zwar in Python geschrieben, an sich ist die API aber ein RESTful-Webdienst und mit den meisten Programmiersprachen kompatibel.

Dieses Beispiel wird als Jupyter-Notebook unter MyBinder ausgeführt. Wählen Sie zum Ausführen den Badge zum Starten von Binder aus:

Binder

Voraussetzungen

Erstellen einer Azure-Ressource

Beginnen Sie mit der Verwendung der Bing-Websuche-API, indem Sie eine der folgenden Azure-Ressourcen erstellen:

Ressource für Bing-Suche v7

  • Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
  • Verwenden Sie den Tarif „Free“, um den Dienst zu testen, und führen Sie später für die Produktion ein Upgrade auf einen kostenpflichtigen Tarif durch.

Ressource für mehrere Dienste

  • Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
  • Verwenden Sie in allen Azure KI Services-Instanzen denselben Schlüssel und Endpunkt für Ihre Anwendungen.

Definieren von Variablen

  1. Ersetzen Sie den Wert von subscription_key durch einen gültigen Abonnementschlüssel aus Ihrem Azure-Konto.

    subscription_key = "YOUR_ACCESS_KEY"
    assert subscription_key
    
  2. Deklarieren Sie den Endpunkt für die Bing-Websuche-API. Sie können den globalen Endpunkt im folgenden Code oder den Endpunkt der benutzerdefinierten Unterdomäne verwenden, der im Azure-Portal für Ihre Ressource angezeigt wird.

    search_url = "https://api.bing.microsoft.com/v7.0/search"
    
  3. Optional können Sie die Suchabfrage auch anpassen, indem Sie den Wert für search_term ersetzen.

    search_term = "Azure Cognitive Services"
    

Erstellen einer Anforderung

In diesem Code wird die requests-Bibliothek verwendet, um die Bing-Websuche-API aufzurufen und die Ergebnisse als JSON-Objekt zurückzugeben. Der API-Schlüssel wird im headers-Wörterbuch übergeben, und der Suchbegriff und die Abfrageparameter werden im params-Wörterbuch übergeben.

Eine vollständige Liste der Optionen und Parameter finden Sie unter Bing-Websuche-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()

Formatieren und Anzeigen der Antwort

Das search_results-Objekt enthält die Suchergebnisse und die Metadaten, wie verwandte Abfragen und Seiten. In diesem Code wird die IPython.display-Bibliothek verwendet, um die Antwort in Ihrem Browser zu formatieren und anzuzeigen.

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))

Beispielcode auf GitHub

Informationen dazu, wie Sie diesen Code lokal ausführen, finden Sie um vollständigen Beispiel auf GitHub.

Nächste Schritte

Weitere Informationen