Sdílet prostřednictvím


Rychlý start: Použití Pythonu k volání rozhraní API Bingu pro vyhledávání na webu

Upozornění

30. října 2020 se rozhraní API Vyhledávání Bingu přesunula ze služeb Azure AI na Vyhledávání Bingu Services. Tato dokumentace je k dispozici pouze pro referenci. Aktualizovanou dokumentaci najdete v dokumentaci k rozhraní API bingu pro vyhledávání. Pokyny k vytváření nových prostředků Azure pro vyhledávání Bingem najdete v tématu Vytvoření prostředku Vyhledávání Bingu prostřednictvím Azure Marketplace.

Pomocí tohoto rychlého startu můžete provést první volání rozhraní API Bingu pro vyhledávání na webu. Tato aplikace Pythonu odešle do rozhraní API požadavek hledání a zobrazí odpověď JSON. I když je tato aplikace napsaná v Pythonu, rozhraní API je webová služba RESTful kompatibilní s většinou programovacích jazyků.

Tento příklad je spuštěný jako poznámkový blok Jupyter na MyBinder. Pokud ho chcete spustit, vyberte odznak spouštěcího pořadače:

Binder

Požadavky

Vytvoření prostředku Azure

Začněte používat rozhraní API Bingu pro vyhledávání na webu vytvořením jednoho z následujících prostředků Azure:

prostředek Vyhledávání Bingu v7

  • Dostupné prostřednictvím Azure Portal, dokud prostředek neodstraníte.
  • K vyzkoušení služby použijte bezplatnou cenovou úroveň a později upgradujte na placenou úroveň pro produkční prostředí.

Prostředek s více službami

  • Dostupné prostřednictvím Azure Portal, dokud prostředek neodstraníte.
  • Pro aplikace používejte stejný klíč a koncový bod napříč několika službami Azure AI.

Definování proměnných

  1. Hodnotu subscription_key nahraďte platným klíčem předplatného ze svého účtu Azure.

    subscription_key = "YOUR_ACCESS_KEY"
    assert subscription_key
    
  2. Deklarujte koncový bod rozhraní API Bingu pro vyhledávání na webu. Globální koncový bod můžete použít v následujícím kódu nebo vlastní koncový bod subdomény zobrazený v Azure Portal pro váš prostředek.

    search_url = "https://api.bing.microsoft.com/v7.0/search"
    
  3. Volitelně můžete přizpůsobit vyhledávací dotaz nahrazením hodnoty pro search_term.

    search_term = "Azure Cognitive Services"
    

Vytvoření požadavku

Tento kód používá knihovnu requests k volání rozhraní API Bingu pro vyhledávání na webu a k vrácení výsledků jako objektu JSON. Klíč k rozhraní API bude předán slovníku headers a hledaný výraz a parametry dotazu budou předány slovníku params.

Úplný seznam možností a parametrů najdete v tématu Rozhraní API Bingu pro vyhledávání na webu v7.

import requests

headers = {"Ocp-Apim-Subscription-Key": subscription_key}
params = {"q": search_term, "textDecorations": True, "textFormat": "HTML"}
response = requests.get(search_url, headers=headers, params=params)
response.raise_for_status()
search_results = response.json()

Formátování a zobrazení odpovědi

Objekt search_results obsahuje výsledky hledání a metadata jako související dotazy a stránky. Tento kód používá k formátování a zobrazení odpovědi v prohlížeči knihovnu IPython.display.

from IPython.display import HTML

rows = "\n".join(["""<tr>
                       <td><a href=\"{0}\">{1}</a></td>
                       <td>{2}</td>
                     </tr>""".format(v["url"], v["name"], v["snippet"])
                  for v in search_results["webPages"]["value"]])
HTML("<table>{0}</table>".format(rows))

Ukázkový kód na GitHubu

Pokud chcete tento kód spustit místně, podívejte se na kompletní ukázku dostupnou na GitHubu.

Další kroky

Viz také