Rövid útmutató: A Bing Custom Search-végpont hívása C használatával#

Figyelmeztetés

2020. október 30-án a Bing Search API-k átkerültek az Azure AI-szolgáltatásokból a Bing Search Servicesbe. Ez a dokumentáció csak referenciaként szolgál. A frissített dokumentációt a Bing search API dokumentációjában találja. Az új Azure-erőforrások Bing-kereséshez való létrehozásával kapcsolatos útmutatásért lásd: Bing Search-erőforrás létrehozása a Azure Marketplace keresztül.

Ebből a rövid útmutatóból megtudhatja, hogyan kérhet le keresési eredményeket a Bing Custom Search-példányból. Bár ez az alkalmazás C#-ban van megírva, a Bing Custom Search API egy RESTful webszolgáltatás, amely kompatibilis a legtöbb programozási nyelvvel. A minta forráskódja elérhető a GitHubon.

Előfeltételek

  • Egy Bing Custom Search-példány. További információ : Rövid útmutató: Az első Bing Custom Search-példány létrehozása.

  • Microsoft .NET Core.

  • A Visual Studio 2019 vagy újabb verzióinak bármely kiadása.

  • Linux/MacOS használata esetén ez az alkalmazás a Mono használatával futtatható.

  • A Bing Custom Search NuGet-csomag.

    A csomag telepítése a Visual Studióban:

    1. Kattintson a jobb gombbal a projektre a Megoldáskezelő, majd válassza a Manage NuGet Packages (NuGet-csomagok kezelése) lehetőséget.
    2. Keresse meg és válassza a Microsoft.Azure.CognitiveServices.Search.CustomSearch elemet, majd telepítse a csomagot.

    A Bing Custom Search NuGet-csomag telepítésekor a Visual Studio a következő csomagokat is telepíti:

    • Microsoft.Rest.ClientRuntime
    • Microsoft.Rest.ClientRuntime.Azure
    • Newtonsoft.Json

Azure-erőforrás létrehozása

Kezdje el használni a Bing Custom Search API-t az alábbi Azure-erőforrások egyikének létrehozásával.

Bing Custom Search-erőforrás

  • Az Azure Portal keresztül érhető el, amíg el nem törli az erőforrást.
  • Az ingyenes tarifacsomag használatával próbálja ki a szolgáltatást, és frissítsen később egy fizetős szintre éles környezetben.

Többszolgáltatásos erőforrás

  • Az Azure Portal keresztül érhető el, amíg el nem törli az erőforrást.
  • Használja ugyanazt a kulcsot és végpontot az alkalmazásokhoz több Azure AI-szolgáltatásban.

Az alkalmazás létrehozása és inicializálása

  1. Hozzon létre egy új C#-konzolalkalmazást a Visual Studióban. Ezután adja hozzá a következő csomagokat a projekthez:

    using System;
    using System.Net.Http;
    using System.Web;
    using Newtonsoft.Json;
    
  2. Hozza létre a következő osztályokat a Bing Custom Search API által visszaadott keresési eredmények tárolásához:

    public class BingCustomSearchResponse {        
        public string _type{ get; set; }            
        public WebPages webPages { get; set; }
    }
    
    public class WebPages {
        public string webSearchUrl { get; set; }
        public int totalEstimatedMatches { get; set; }
        public WebPage[] value { get; set; }        
    }
    
    public class WebPage {
        public string name { get; set; }
        public string url { get; set; }
        public string displayUrl { get; set; }
        public string snippet { get; set; }
        public DateTime dateLastCrawled { get; set; }
        public string cachedPageUrl { get; set; }
    }
    
  3. A projekt fő módszerében hozza létre a következő változókat a Bing Custom Search API-előfizetési kulcsához, a keresési példány egyéni konfigurációs azonosítójához és a keresési kifejezéshez:

    var subscriptionKey = "YOUR-SUBSCRIPTION-KEY";
    var customConfigId = "YOUR-CUSTOM-CONFIG-ID";
    var searchTerm = args.Length > 0 ? args[0]:"microsoft";
    
  4. A kérelem URL-címét úgy hozhatja létre, hogy hozzáfűzi a keresési kifejezést a q= lekérdezési paraméterhez, valamint a keresési példány egyéni konfigurációs azonosítóját a customconfig= paraméterhez. Válassza el a paramétereket egy ampers és (&) paraméterrel. url A változó értékéhez használhatja a globális végpontot az alábbi kódban, vagy használhatja az erőforrás Azure Portal megjelenő egyéni altartományvégpontot.

    var url = "https://api.cognitive.microsoft.com/bingcustomsearch/v7.0/search?" +
                "q=" + searchTerm + "&" +
                "customconfig=" + customConfigId;
    

Keresési kérelem küldése és fogadása

  1. Hozzon létre egy kérelemügyfélt, és adja hozzá az előfizetési kulcsot a Ocp-Apim-Subscription-Key fejléchez.

    var client = new HttpClient();
    client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", subscriptionKey);
    
  2. Hajtsa végre a keresési kérést, és kérje le a választ JSON-objektumként.

    var httpResponseMessage = client.GetAsync(url).Result;
    var responseContent = httpResponseMessage.Content.ReadAsStringAsync().Result;
    BingCustomSearchResponse response = JsonConvert.DeserializeObject<BingCustomSearchResponse>(responseContent);
    

Dolgozza fel és tekintse meg az eredményeket

  • Iterálja át a válaszobjektumot az egyes keresési eredményekre vonatkozó információk megjelenítéséhez, beleértve a nevét, url-címét és a weblap utolsó bejárásának dátumát.

    for(int i = 0; i < response.webPages.value.Length; i++) {                
        var webPage = response.webPages.value[i];
    
        Console.WriteLine("name: " + webPage.name);
        Console.WriteLine("url: " + webPage.url);                
        Console.WriteLine("displayUrl: " + webPage.displayUrl);
        Console.WriteLine("snippet: " + webPage.snippet);
        Console.WriteLine("dateLastCrawled: " + webPage.dateLastCrawled);
        Console.WriteLine();
    }
    Console.WriteLine("Press any key to exit...");
    Console.ReadKey();
    

Következő lépések