Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Warnung
Am 30. Oktober 2020 wurden die Bing Search-APIs von Azure AI-Diensten zu Bing Search Services verschoben. Diese Dokumentation wird nur zur Referenz 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 mit der Suche nach Nachrichten mit der Bing News Search-Clientbibliothek für C# zu beginnen. Die Bing News Search verfügt zwar über eine REST-API, die mit den meisten Programmiersprachen kompatibel ist, die Clientbibliothek bietet jedoch eine einfache Möglichkeit, den Dienst in Ihre Anwendungen zu integrieren. Den Quellcode für dieses Beispiel finden Sie auf GitHub.
Voraussetzungen
Jede Edition von Visual Studio 2017 oder höher.
Das Json.NET Framework, das als NuGet-Paket verfügbar ist.
Unter Linux/macOS kann diese Anwendung mit Mono ausgeführt werden
Das Bing News Search NuGet-SDK-Paket. Bei der Installation dieses Pakets wird außerdem Folgendes installiert:
- Microsoft.Rest.ClientRuntime
- Microsoft.Rest.ClientRuntime.Azure
- Newtonsoft.Json
Um eine Konsolenanwendung mithilfe der Bing News Search-Clientbibliothek einzurichten, navigieren Sie im Projektmappen-Explorer in Visual Studio zur Option Manage NuGet Packages. Fügen Sie das Paket Microsoft.Azure.CognitiveServices.Search.NewsSearch hinzu.
Erstellen einer Azure-Ressource
Beginnen Sie mit der Verwendung der Bing News Search-API, indem Sie eine der folgenden Azure-Ressourcen erstellen:
- Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
- Verwenden Sie das kostenlose Preisniveau, um den Dienst auszuprobieren und später auf eine kostenpflichtige Stufe für die Produktion zu aktualisieren.
- Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
- Verwenden Sie denselben Schlüssel und Endpunkt für Ihre Anwendungen in mehreren Azure AI-Diensten.
Erstellen und Initialisieren eines Projekts
Erstellen Sie eine neue C#-Konsolenlösung in Visual Studio. Fügen Sie dann Folgendes in die Hauptcodedatei ein.
using System; using System.Linq; using Microsoft.Azure.CognitiveServices.Search.NewsSearch;Erstellen Sie eine Variable für Ihren API-Schlüssel, einen Suchbegriff, und instanziieren Sie dann den Nachrichtensuchclient damit.
var key = "YOUR-ACCESS-KEY"; var searchTerm = "Quantum Computing"; var client = new NewsSearchClient(new ApiKeyServiceClientCredentials(key));
Senden einer Anforderung und Analysieren des Ergebnisses
Verwenden Sie den Client, um eine Suchanfrage an den Bing News Search-Dienst zu senden:
var newsResults = client.News.SearchAsync(query: searchTerm, market: "en-us", count: 10).Result;Wenn Ergebnisse zurückgegeben wurden, analysieren Sie sie:
if (newsResults.Value.Count > 0) { var firstNewsResult = newsResults.Value[0]; Console.WriteLine($"TotalEstimatedMatches value: {newsResults.TotalEstimatedMatches}"); Console.WriteLine($"News result count: {newsResults.Value.Count}"); Console.WriteLine($"First news name: {firstNewsResult.Name}"); Console.WriteLine($"First news url: {firstNewsResult.Url}"); Console.WriteLine($"First news description: {firstNewsResult.Description}"); Console.WriteLine($"First news published time: {firstNewsResult.DatePublished}"); Console.WriteLine($"First news provider: {firstNewsResult.Provider[0].Name}"); } else { Console.WriteLine("Couldn't find news results!"); } Console.WriteLine("Enter any key to exit..."); Console.ReadKey();
Nächste Schritte
Verwenden Sie diese Schnellstartanleitung, um mit der Suche nach Nachrichten mit der Bing News Search-Clientbibliothek für Java zu beginnen. Die Bing News Search verfügt zwar über eine REST-API, die mit den meisten Programmiersprachen kompatibel ist, die Clientbibliothek bietet jedoch eine einfache Möglichkeit, den Dienst in Ihre Anwendungen zu integrieren. Den Quellcode für dieses Beispiel finden Sie auf GitHub.
Voraussetzungen
Installieren Sie die Clientbibliotheksabhängigkeiten der Bing News Search mithilfe von Maven, Gradle oder einem anderen Abhängigkeitsverwaltungssystem. Für die Datei Maven POM ist die folgende Deklaration erforderlich:
<dependencies>
<dependency>
<groupId>com.microsoft.azure.cognitiveservices</groupId>
<artifactId>azure-cognitiveservices-newssearch</artifactId>
<version>0.0.1-beta-SNAPSHOT</version>
</dependency>
</dependencies>
Erstellen einer Azure-Ressource
Beginnen Sie mit der Verwendung der Bing News Search-API, indem Sie eine der folgenden Azure-Ressourcen erstellen:
- Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
- Verwenden Sie das kostenlose Preisniveau, um den Dienst auszuprobieren und später auf eine kostenpflichtige Stufe für die Produktion zu aktualisieren.
- Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
- Verwenden Sie denselben Schlüssel und Endpunkt für Ihre Anwendungen in mehreren Azure AI-Diensten.
Erstellen und Initialisieren eines Projekts
Erstellen Sie ein neues Java-Projekt in Ihrer bevorzugten IDE oder Ihrem Bevorzugten Editor, und importieren Sie die folgenden Bibliotheken.
import com.microsoft.azure.cognitiveservices.newssearch.*;
import com.microsoft.azure.cognitiveservices.newssearch.implementation.NewsInner;
import com.microsoft.azure.cognitiveservices.newssearch.implementation.NewsSearchAPIImpl;
import com.microsoft.azure.cognitiveservices.newssearch.implementation.TrendingTopicsInner;
import com.microsoft.rest.credentials.ServiceClientCredentials;
import okhttp3.Interceptor;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import java.io.IOException;
Erstellen eines Suchclients und Speichern von Anmeldeinformationen
Erstellen Sie eine Methode namens
getClient(), die einen neuenNewsSearchAPIImplSuchclient zurückgibt. Fügen Sie Ihren Endpunkt als ersten Parameter für das neueNewsSearchAPIImpl-Objekt und ein neuesServiceClientCredentials-Objekt hinzu, um Ihre Anmeldeinformationen zu speichern.public static NewsSearchAPIImpl getClient(final String subscriptionKey) { return new NewsSearchAPIImpl("https://api.cognitive.microsoft.com/bing/v7.0/", new ServiceClientCredentials() { }); }Um das
ServiceClientCredentials-Objekt zu erstellen, überschreiben Sie dieapplyCredentialsFilter()-Funktion. Übergeben Sie eineOkHttpClient.Builderan die Methode und verwenden Sie dieaddNetworkInterceptor()-Methode des Builders, um Ihre Zugangsdaten für den Aufruf der Clientbibliothek zu erstellen.new ServiceClientCredentials() { @Override public void applyCredentialsFilter(OkHttpClient.Builder builder) { builder.addNetworkInterceptor( new Interceptor() { @Override public Response intercept(Chain chain) throws IOException { Request request = null; Request original = chain.request(); // Request customization: add request headers. Request.Builder requestBuilder = original.newBuilder() .addHeader("Ocp-Apim-Subscription-Key", subscriptionKey); request = requestBuilder.build(); return chain.proceed(request); } }); } });
Senden und Empfangen einer Suchanfrage
Erstellen Sie eine Methode, die
getClient()aufruft und eine Suchanforderung an den Bing News Search-Dienst sendet. Filtern Sie die Suche mit den Marktparameter und Anzahlparameter, und drucken Sie anschließend Informationen zum ersten Nachrichtenergebnis: Name, URL, Publikationsdatum, Beschreibung, Anbietername und Gesamtzahl der geschätzten Treffer für Ihre Suche.public static void newsSearch(String subscriptionKey) { NewsSearchAPIImpl client = getClient(subscriptionKey); String searchTerm = "Quantum Computing"; NewsInner newsResults = client.searchs().list(searchTerm, null, null, null, null, null, 100, null, "en-us", null, null, null, null, null, null, null); if (newsResults.value().size() > 0) { NewsArticle firstNewsResult = newsResults.value().get(0); System.out.println(String.format("TotalEstimatedMatches value: %d", newsResults.totalEstimatedMatches())); System.out.println(String.format("News result count: %d", newsResults.value().size())); System.out.println(String.format("First news name: %s", firstNewsResult.name())); System.out.println(String.format("First news url: %s", firstNewsResult.url())); System.out.println(String.format("First news description: %s", firstNewsResult.description())); System.out.println(String.format("First news published time: %s", firstNewsResult.datePublished())); System.out.println(String.format("First news provider: %s", firstNewsResult.provider().get(0).name())); } else { System.out.println("Couldn't find news results!"); } }Fügen Sie die Suchmethode zu einer
main()Methode hinzu, um den Code auszuführen.public static void main(String[] args) { String subscriptionKey = "YOUR-SUBSCRIPTION-KEY"; NewsSearchSDK.newsSearch(subscriptionKey); }
Nächste Schritte
Verwenden Sie diese Schnellstartanleitung, um mit der Suche nach Nachrichten mit der Bing News Search-Clientbibliothek für JavaScript zu beginnen. Die Bing News Search verfügt zwar über eine REST-API, die mit den meisten Programmiersprachen kompatibel ist, die Clientbibliothek bietet jedoch eine einfache Möglichkeit, den Dienst in Ihre Anwendungen zu integrieren. Den Quellcode für dieses Beispiel finden Sie auf GitHub.
Voraussetzungen
- Die neueste Version von Node.js.
- Das Bing News Search SDK für JavaScript
- Führen Sie zum Installieren
npm install @azure/cognitiveservices-newssearchaus.
- Führen Sie zum Installieren
- Die
CognitiveServicesCredentialsKlasse aus@azure/ms-rest-azure-jsPaket zur Authentifizierung des Clients.- Führen Sie zum Installieren
npm install @azure/ms-rest-azure-jsaus.
- Führen Sie zum Installieren
Erstellen einer Azure-Ressource
Beginnen Sie mit der Verwendung der Bing News Search-API, indem Sie eine der folgenden Azure-Ressourcen erstellen:
- Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
- Verwenden Sie das kostenlose Preisniveau, um den Dienst auszuprobieren und später auf eine kostenpflichtige Stufe für die Produktion zu aktualisieren.
- Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
- Verwenden Sie denselben Schlüssel und Endpunkt für Ihre Anwendungen in mehreren Azure AI-Diensten.
Erstellen und Initialisieren der Anwendung
Erstellen Sie eine Instanz des
CognitiveServicesCredentials. Erstellen Sie Variablen für Ihren Abonnementschlüssel und einen Suchbegriff.const CognitiveServicesCredentials = require('@azure/ms-rest-azure-js').CognitiveServicesCredentials; let credentials = new CognitiveServicesCredentials('YOUR-ACCESS-KEY'); let search_term = 'Winter Olympics'Instanziieren Sie den Client:
const NewsSearchAPIClient = require('@azure/cognitiveservices-newssearch'); let client = new NewsSearchAPIClient(credentials);
Senden einer Suchabfrage
Verwenden Sie den Client, um mit einem Abfragebegriff zu suchen, in diesem Fall "Winterspiele":
client.newsOperations.search(search_term).then((result) => { console.log(result.value); }).catch((err) => { throw err; });
Der Code gibt result.value Elemente in der Konsole aus, ohne Text zu parsen. Die Ergebnisse( falls vorhanden pro Kategorie) umfassen:
_type: 'NewsArticle'_type: 'WebPage'_type: 'VideoObject'_type: 'ImageObject'
Nächste Schritte
Verwenden Sie diese Schnellstartanleitung, um mit der Suche nach Nachrichten mit der Bing News Search-Clientbibliothek für Python zu beginnen. Die Bing News Search verfügt zwar über eine REST-API, die mit den meisten Programmiersprachen kompatibel ist, die Clientbibliothek bietet jedoch eine einfache Möglichkeit, den Dienst in Ihre Anwendungen zu integrieren. Den Quellcode für dieses Beispiel finden Sie auf GitHub.
Voraussetzungen
- Python 2.x oder 3.x
Es wird empfohlen, eine virtuelle Umgebung für Ihre Python-Entwicklung zu verwenden. Sie können die virtuelle Umgebung mit dem venv-Modulinstallieren und initialisieren. Sie müssen einen virtualenv für Python 2.7 installieren. Sie können eine virtuelle Umgebung mit:
python -m venv mytestenv
Sie können die Clientbibliotheksabhängigkeiten der Bing News Search mit diesem Befehl installieren:
python -m pip install azure-cognitiveservices-search-newssearch
Erstellen einer Azure-Ressource
Beginnen Sie mit der Verwendung der Bing News Search-API, indem Sie eine der folgenden Azure-Ressourcen erstellen:
- Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
- Verwenden Sie das kostenlose Preisniveau, um den Dienst auszuprobieren und später auf eine kostenpflichtige Stufe für die Produktion zu aktualisieren.
- Verfügbar über das Azure-Portal, bis Sie die Ressource löschen.
- Verwenden Sie denselben Schlüssel und Endpunkt für Ihre Anwendungen in mehreren Azure AI-Diensten.
Erstellen und Initialisieren der Anwendung
Erstellen Sie eine neue Python-Datei in Ihrer bevorzugten IDE oder Ihrem Bevorzugten Editor, und importieren Sie die folgenden Bibliotheken. Erstellen Sie eine Variable für Ihren Abonnementschlüssel und Ihren Suchbegriff.
from azure.cognitiveservices.search.newssearch import NewsSearchClient from msrest.authentication import CognitiveServicesCredentials subscription_key = "YOUR-SUBSCRIPTION-KEY" endpoint = "YOUR-ENDPOINT" search_term = "Quantum Computing"
Initialisieren des Clients und Senden einer Anforderung
Erstellen Sie eine instance von
CognitiveServicesCredentials.client = NewsSearchClient(endpoint=endpoint, credentials=CognitiveServicesCredentials(subscription_key))Senden Sie eine Suchabfrage an die Nachrichtensuche-API, speichern Sie die Antwort.
news_result = client.news.search(query=search_term, market="en-us", count=10)
Analysieren der Antwort
Wenn Suchergebnisse gefunden werden, drucken Sie das erste Webseitenergebnis:
if news_result.value:
first_news_result = news_result.value[0]
print("Total estimated matches value: {}".format(
news_result.total_estimated_matches))
print("News result count: {}".format(len(news_result.value)))
print("First news name: {}".format(first_news_result.name))
print("First news url: {}".format(first_news_result.url))
print("First news description: {}".format(first_news_result.description))
print("First published time: {}".format(first_news_result.date_published))
print("First news provider: {}".format(first_news_result.provider[0].name))
else:
print("Didn't see any news result data..")