=

Seznamte se s Bing Search API a Azure Marketplace

Během prvního roku života tohoto blogu jsem překročil hranici 50 článků, čímž nastala akutní potřeba přidat na web vyhledávání. Původně jsem chtěl napsat jednoduché vyhledávání pomocí full textu ale nakonec jsem se rozhodl implementovat vyhledávání Bing. Právě na seznámení se a ukázku implementace Bing Search API je zaměřen tento článek.

K rozhodnutí použít Bing Search API jsem došel z mnoha důvodů:

  • jednoduché a rychlé rozhraní (jsem líný psát si něco vlastního)
  • relevantní výsledky (spíše než kdybych si to psal sám)
  • hledání na celém webu (řadu stránek nemám v databázi)

Seznamte se s Bing Search API

Dobrým startem je navštívení stránky Bing Dev Center, na které je aktuální přehled dostupných služeb z datového tržiště Microsoft Azure Marketplace. Na stránce jsou články z vývojářského blogu a odkazy na různé ukázky a tooly je stažení.

Seznam API

Pro rychlý start stačí vybrat Bing Search API, čímž dojde k přesměrování na datové tržiště a zde se konečně vybere druh plánu dle počtu transakcí (počtu requestů proti API). Prvních 5000 dotazů je zdarma.

Přehled placených plánů

Na této stránce je v dolní části velmi užitečný odkaz Explore this dataset, kde je možné si zkusit posílat proti API requesty.

Explore Dataser Bing Search API

Na této stránce je také vidět počet zbývajících transakcí daného plánu a po kliknutí i primární API klíč. API klíče a vůbec celý účet lze spravovat na stránce account datového tržiště. Zde je možné nalézt přehled všech používaných API, počty dostupných a zbývajících transakcí včetně licenčních podmínek.

Implementace

Nejsnazší cesta implementace Bing Search API je použitím připravené C# library. Ta je ke stažení na stejné stránce, kde se volí typ plánu.

Knihovnu je následně možné přidat do svého projektu a velmi snadno ji použít. V případě MVC aplikace může vypadat implementace takto:

[HttpPost]
public ActionResult Search(string term = null)
{
    if (string.IsNullOrEmpty(term))
        return View(new List<WebResult>());

    string url = "https://api.datamarket.azure.com/Bing/Search";
    BingSearchContainer search = new BingSearchContainer(new Uri(url))
    {
        Credentials = new NetworkCredential(BingSearchApiKey, BingSearchApiKey)
    };

    var query = search.Web(string.Concat("site:miroslavholec.cz/blog ", term), null, null, "cs-cz", null, null, null, null);

    return View(query.Execute().ToList());
}

Vhodné je upozornit na třídu NetworkCredential, která v konstruktoru přijímá dvakrát stejný API klíč, který lze nalézt na stránce svého účtu.

Klientský kód může být minimalizován do formy jednoduchého formuláře.

<form action="home/search" method="POST">
    <input type="text" value="" name="term">
    <input type="submit" value="Bing it!">
</form>

Další odkazy

Na závěr

Použití Bing Search API je velmi jednoduché a hodí se dodat, že je možné ho velmi podobným způsobem využít i pro hledání obrázků nebo jiných typů souborů. Živou ukázku vyhledávání můžete najít i na tomto blogu v záhlaví nebo přímo zde:

Miroslav Holec

Miroslav Holec

13. 9. 2015
upraven 29. 3. 2016

Tento článek je již velmi zastaralý. Článek nemusí popisovat aktuální stav technologie, ideální řešení a můj současný pohled na dané téma.

Videa

RestApi.CZ

Právě jsem spustil průvodce Designem REST API

📖 Přečíst restapi.cz

Veřejná školení Místo Datum Délka Cena bez DPH Poznámky
Novinky v .NET 6 a C# 10 online 13. 10. 2022 1 den 3 900 Kč poslední šance registrovat
Vývoj aplikací v ASP.NET Core Praha + online 11/2022 1 den 4 900 Kč bestseller registrovat
Blazor Server & WebAssembly Praha + online 11/2022 2 dny 10 900 Kč registrovat
ASP.NET Core gRPC Praha + online 11/2022 1 den 4 900 Kč registrovat
Design REST API a Design First Praha + online 11/2022 2 dny 9 900 Kč exkluzivní registrovat
Vývoj REST API s Minimal APIs Praha + online 11/2022 1 den 5 900 Kč exkluzivní registrovat
Vývoj REST API v .NET MVC Praha + online 11/2022 1 den 4 900 Kč bestseller registrovat
Entity Framework Core Praha + online 11/2022 2 dny 11 900 Kč registrovat
Vývoj .NET aplikací pro Azure Praha + online 11/2022 1 den 5 900 Kč nový registrovat

kontakt zde

Dotazy, poptávky a objednávky

mirek@miroslavholec.cz
Loading