Mulai cepat: Panggil titik akhir Pencarian Kustom Bing Anda menggunakan C#

Peringatan

Pada 30 Oktober 2020, API Bing Search dipindahkan dari layanan Azure AI ke layanan Bing Search. Dokumentasi ini disediakan hanya untuk referensi. Untuk dokumentasi terbaru, lihat dokumentasi Bing Search API. Untuk petunjuk tentang cara membuat sumber daya Azure baru untuk pencarian Bing, lihat Membuat sumber daya Pencarian Bing melalui Marketplace Azure.

Gunakan mulai cepat ini untuk mempelajari cara meminta hasil pencarian dari instans Pencarian Kustom Bing Anda. Meskipun aplikasi ini ditulis dalam C3, API Pencarian Kustom Bing adalah layanan web RESTful yang kompatibel dengan sebagian besar bahasa pemrograman. Kode sumber untuk sampel ini tersedia di GitHub.

Prasyarat

  • Instans Pencarian Kustom Bing. Untuk informasi selengkapnya, lihat Mulai Cepat: Buat instans Pencarian Kustom Bing pertama Anda.

  • Microsoft .NET Core.

  • Edisi Visual Studio 2019 atau yang lebih baru.

  • Jika Anda menggunakan Linux/MacOS, aplikasi ini dapat dijalankan menggunakan Mono.

  • NuGet Package Pencarian Kustom Bing.

    Untuk memasang paket ini di Visual Studio:

    1. Klik kanan proyek Anda di Penjelajah Solusi, dan pilih Kelola NuGet Package.
    2. Cari dan pilih Microsoft.Azure.CognitiveServices.Search.ImageSearch, lalu pasang paket tersebut.

    Saat Anda memasang NuGet package Pencarian Kustom Bing NuGet, Visual Studio juga memasang paket berikut:

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

Membuat grup sumber daya Azure

Mulai gunakan Bing Custom Search API dengan membuat salah satu sumber daya Azure berikut.

Sumber daya Bing Custom Search

  • Tersedia melalui portal Azure hingga Anda menghapus sumber daya.
  • Gunakan tingkat harga gratis untuk mencoba layanan, dan tingkatkan ke tingkat berbayar untuk produksi di kemudian hari.

Sumber daya multilayanan

  • Tersedia melalui portal Azure hingga Anda menghapus sumber daya.
  • Gunakan kunci dan titik akhir yang sama untuk aplikasi Anda, di beberapa layanan Azure AI.

Membuat dan menginisialisasi aplikasi

  1. Buat aplikasi konsol C# baru di Visual Studio. Kemudian, tambahkan paket berikut ke proyek Anda:

    using System;
    using System.Net.Http;
    using System.Web;
    using Newtonsoft.Json;
    
  2. Buat kelas berikut untuk menyimpan hasil pencarian yang dikembalikan oleh API Pencarian Kustom Bing:

    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. Dalam metode utama projek Anda, buat variabel berikut untuk kunci langganan API Pencarian Kustom Bing Anda, ID konfigurasi kustom instans pencarian, dan istilah pencarian:

    var subscriptionKey = "YOUR-SUBSCRIPTION-KEY";
    var customConfigId = "YOUR-CUSTOM-CONFIG-ID";
    var searchTerm = args.Length > 0 ? args[0]:"microsoft";
    
  4. Buat URL permintaan dengan menambahkan istilah pencarian Anda ke q= parameter kueri,dan ID konfigurasi kustom instans pencarian Anda ke customconfig= parameter. Pisahkan parameter dengan simbol "dan" (&). Untuk url nilai variable, Anda dapat menggunakan titik akhir global dalam kode berikut, atau menggunakan titik akhir subdomain kustom yang ditampilkan di portal Microsoft Azure untuk sumber daya Anda.

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

Kirim dan terima permintaan pencarian

  1. Buat permintaan dengan URI Anda, dan tambahkan kunci langganan Anda ke Ocp-Apim-Subscription-Key header.

    var client = new HttpClient();
    client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", subscriptionKey);
    
  2. Lakukan permintaan web dan dapatkan respons sebagai string JSON.

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

Proses dan lihat hasilnya

  • Ulangi objek respons untuk menampilkan informasi tentang setiap hasil pencarian, termasuk nama, url, dan tanggal halaman web terakhir di-crawl.

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

Langkah berikutnya