Démarrage rapide : Utiliser la bibliothèque de client Recherche d’actualités Bing

Avertissement

Le 30 octobre 2020, les API Recherche Bing sont passées de Cognitive Services à Bing Search Services. Cette documentation est fournie à des fins de référence uniquement. Pour accéder à la documentation mise à jour, consultez la documentation de l’API Recherche Bing. Pour obtenir des instructions sur la création de nouvelles ressources Azure pour Recherche Bing, consultez Créer une ressource Recherche Bing à l’aide de Place de marché Azure.

Utilisez ce guide de démarrage rapide pour démarrer une recherche d’actualités avec la bibliothèque de client Recherche d’actualités Bing pour C#. Si l’outil Recherche d’actualités Bing dispose d’une API REST compatible avec la plupart des langages de programmation, la bibliothèque de client offre quant à elle un moyen facile d’intégrer le service à vos applications. Le code source de cet exemple est disponible sur GitHub.

Prérequis

Pour configurer une application console à l’aide de la bibliothèque de client pour Recherche d’actualités Bing, accédez à l’option Manage NuGet Packages à partir de l’Explorateur de solutions dans Visual Studio. Ajoutez le package Microsoft.Azure.CognitiveServices.Search.NewsSearch.

Créer une ressource Azure

Commencez à utiliser l’API Recherche d’actualités Bing en créant une des ressources Azure suivantes :

Ressource Recherche Bing v7

  • Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
  • Utilisez le niveau tarifaire Gratuit pour tester le service, puis effectuez par la suite une mise à niveau vers un niveau payant pour la production.

Ressource multiservice

  • Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
  • Utilisez la même clé et le même point de terminaison pour vos applications, dans plusieurs services Cognitive Services.

Créer et initialiser un projet

  1. Créez une solution console en C# dans Visual Studio. Ajoutez ensuite les éléments suivants dans le fichier de code principal.

    using System;
    using System.Linq;
    using Microsoft.Azure.CognitiveServices.Search.NewsSearch;
    
  2. Créez une variable pour votre clé d’API et un terme de recherche, puis instanciez le client de recherche d’actualités.

    var key = "YOUR-ACCESS-KEY";
    var searchTerm = "Quantum Computing";
    var client = new NewsSearchClient(new ApiKeyServiceClientCredentials(key));
    

Envoyer une requête, puis analyser le résultat

  1. Utilisez le client pour envoyer une requête de recherche au service Recherche d’actualités Bing :

    var newsResults = client.News.SearchAsync(query: searchTerm, market: "en-us", count: 10).Result;
    
  2. Si des résultats sont retournés, analysez-les :

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

Étapes suivantes

Utilisez ce guide de démarrage rapide pour démarrer une recherche d’actualités avec la bibliothèque de client Recherche d’actualités Bing pour Java. Si l’outil Recherche d’actualités Bing dispose d’une API REST compatible avec la plupart des langages de programmation, la bibliothèque de client offre quant à elle un moyen facile d’intégrer le service à vos applications. Le code source de cet exemple est disponible sur GitHub.

Prérequis

Installez les dépendances de bibliothèque de client Recherche d’actualités Bing en utilisant Maven, Gradle ou un autre système de gestion des dépendances. Le fichier POM Maven nécessite la déclaration suivante :

    <dependencies>
    <dependency>
        <groupId>com.microsoft.azure.cognitiveservices</groupId>
        <artifactId>azure-cognitiveservices-newssearch</artifactId>
        <version>0.0.1-beta-SNAPSHOT</version>
    </dependency>
    </dependencies>

Créer une ressource Azure

Commencez à utiliser l’API Recherche d’actualités Bing en créant une des ressources Azure suivantes :

Ressource Recherche Bing v7

  • Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
  • Utilisez le niveau tarifaire Gratuit pour tester le service, puis effectuez par la suite une mise à niveau vers un niveau payant pour la production.

Ressource multiservice

  • Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
  • Utilisez la même clé et le même point de terminaison pour vos applications, dans plusieurs services Cognitive Services.

Créer et initialiser un projet

Créez un projet Java dans votre éditeur ou IDE favori, puis importez les bibliothèques suivantes.

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;

Créer un client de recherche et stocker les informations d’identification

  1. Créez une méthode appelée getClient() qui retourne un nouveau client de recherche NewsSearchAPIImpl. Ajoutez votre point de terminaison comme premier paramètre du nouvel objet NewsSearchAPIImpl, et un nouvel objet ServiceClientCredentials pour le stockage de vos informations d’identification.

    public static NewsSearchAPIImpl getClient(final String subscriptionKey) {
        return new NewsSearchAPIImpl("https://api.cognitive.microsoft.com/bing/v7.0/",
                new ServiceClientCredentials() {
                });
    }
    
  2. Pour créer l’objet ServiceClientCredentials, substituez la fonction applyCredentialsFilter(). Passez un OkHttpClient.Builder à la méthode, puis utilisez la méthode addNetworkInterceptor() du générateur pour créer les informations d’identification nécessaires à l’appel de la bibliothèque de client.

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

Envoyer et recevoir une requête de recherche

  1. Créez une méthode qui appelle getClient() et envoie une requête de recherche au service Recherche d’actualités Bing. Filtrez la recherche avec les paramètres market et count, puis affichez les informations relatives au premier résultat d’actualités : nom, URL, date de publication, description, nom du fournisseur et nombre total estimé de correspondances pour votre recherche.

    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!");
        }
    
    }
    
    
  2. Ajoutez votre méthode de recherche à une méthode main() pour exécuter le code.

    public static void main(String[] args) {
        String subscriptionKey = "YOUR-SUBSCRIPTION-KEY";
        NewsSearchSDK.newsSearch(subscriptionKey);
    }
    

Étapes suivantes

Utilisez ce guide de démarrage rapide pour démarrer une recherche d’actualités avec la bibliothèque de client Recherche d’actualités Bing pour JavaScript. Si l’outil Recherche d’actualités Bing dispose d’une API REST compatible avec la plupart des langages de programmation, la bibliothèque de client offre quant à elle un moyen facile d’intégrer le service à vos applications. Le code source de cet exemple est disponible sur GitHub.

Prérequis

  • La dernière version de Node.js.
  • Le SDK Recherche d’actualités Bing pour JavaScript
    • Pour l’installer, exécutez npm install @azure/cognitiveservices-newssearch
  • La classe CognitiveServicesCredentials du package @azure/ms-rest-azure-js pour authentifier le client.
    • Pour l’installer, exécutez npm install @azure/ms-rest-azure-js

Créer une ressource Azure

Commencez à utiliser l’API Recherche d’actualités Bing en créant une des ressources Azure suivantes :

Ressource Recherche Bing v7

  • Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
  • Utilisez le niveau tarifaire Gratuit pour tester le service, puis effectuez par la suite une mise à niveau vers un niveau payant pour la production.

Ressource multiservice

  • Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
  • Utilisez la même clé et le même point de terminaison pour vos applications, dans plusieurs services Cognitive Services.

Créer et initialiser l’application

  1. Créez une instance de CognitiveServicesCredentials. Créez des variables pour votre clé d’abonnement et un terme de recherche.

    const CognitiveServicesCredentials = require('@azure/ms-rest-azure-js').CognitiveServicesCredentials;
    let credentials = new CognitiveServicesCredentials('YOUR-ACCESS-KEY');
    let search_term = 'Winter Olympics'
    
  2. Instanciez le client :

    const NewsSearchAPIClient = require('@azure/cognitiveservices-newssearch');
    let client = new NewsSearchAPIClient(credentials);
    

Envoyer une requête de recherche

  1. Utilisez le client pour rechercher un terme de requête, en l’occurrence « Winter Olympics » :

    client.newsOperations.search(search_term).then((result) => {
        console.log(result.value);
    }).catch((err) => {
        throw err;
    });
    

Le code envoie les éléments result.value à la console sans analyser le texte. Les résultats, le cas échéant par catégorie, incluent les éléments suivants :

  • _type: 'NewsArticle'
  • _type: 'WebPage'
  • _type: 'VideoObject'
  • _type: 'ImageObject'

Étapes suivantes

Utilisez ce guide de démarrage rapide pour démarrer une recherche d’actualités avec la bibliothèque de client Recherche d’actualités Bing pour Python. Si l’outil Recherche d’actualités Bing dispose d’une API REST compatible avec la plupart des langages de programmation, la bibliothèque de client offre quant à elle un moyen facile d’intégrer le service à vos applications. Le code source de cet exemple est disponible sur GitHub.

Prérequis

Il est recommandé d’utiliser un environnement virtuel pour votre développement Python. Vous pouvez installer et initialiser l’environnement virtuel avec le module venv. Vous devez installer un environnement virtuel pour Python 2.7. Vous pouvez créer un environnement virtuel avec :

python -m venv mytestenv

Vous pouvez installer les dépendances de la bibliothèque de client Recherche d’actualités Bing à l’aide de cette commande :

python -m pip install azure-cognitiveservices-search-newssearch

Créer une ressource Azure

Commencez à utiliser l’API Recherche d’actualités Bing en créant une des ressources Azure suivantes :

Ressource Recherche Bing v7

  • Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
  • Utilisez le niveau tarifaire Gratuit pour tester le service, puis effectuez par la suite une mise à niveau vers un niveau payant pour la production.

Ressource multiservice

  • Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
  • Utilisez la même clé et le même point de terminaison pour vos applications, dans plusieurs services Cognitive Services.

Créer et initialiser l’application

  1. Créez un fichier Python dans votre éditeur ou IDE favori, puis importez les bibliothèques suivantes. Créez une variable pour votre clé d’abonnement ainsi qu’un terme de recherche.

    from azure.cognitiveservices.search.newssearch import NewsSearchClient
    from msrest.authentication import CognitiveServicesCredentials
    subscription_key = "YOUR-SUBSCRIPTION-KEY"
    endpoint = "YOUR-ENDPOINT"
    search_term = "Quantum Computing"
    

Initialiser le client et envoyer une requête

  1. Créez une instance de CognitiveServicesCredentials.

    client = NewsSearchClient(endpoint=endpoint, credentials=CognitiveServicesCredentials(subscription_key))
    
  2. Envoyez une requête de recherche à l’API Recherche d’actualités et stockez la réponse.

    news_result = client.news.search(query=search_term, market="en-us", count=10)
    

Analyser la réponse

Si des résultats sont retournés, affichez le premier résultat de la page web :

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

Étapes suivantes