Rychlý start: Použití Pythonu k volání rozhraní API Bingu pro vyhledávání na webuQuickstart: Use Python to call the Bing Web Search API

V tomto rychlém startu poprvé zavoláte rozhraní API Bingu pro vyhledávání na webu a dostanete odpověď JSON, a nezabere vám to ani 10 minut.Use this quickstart to make your first call to the Bing Web Search API and receive a JSON response in less than 10 minutes.

K tomuto rychlému startu potřebujete účet služby Azure Cognitive Services s rozhraními API pro vyhledávání Bingu.This quickstart requires an Azure Cognitive Services account with Bing Search APIs. Pokud účet nemáte, můžete k získání klíče předplatného použít bezplatnou zkušební verzi.If you don't have an account, you can use the free trial to get a subscription key.

Tento příklad je spuštěný jako poznámkový blok Jupyter na MyBinder.This example is run as a Jupyter notebook on MyBinder. Klikněte na odznáček pro spuštění Binderu:Click the launch Binder badge:

BinderBinder

Definování proměnnýchDefine variables

Hodnotu subscription_key nahraďte platným klíčem předplatného ze svého účtu Azure.Replace the subscription_key value with a valid subscription key from your Azure account.

subscription_key = "YOUR_ACCESS_KEY"
assert subscription_key

Deklarujte koncový bod rozhraní API Bingu pro vyhledávání na webu.Declare the Bing Web Search API endpoint. Pokud se při autorizaci objeví chyby, znovu zkontrolujte tuto hodnotu a porovnejte ji s koncovým bodem Hledání Bingem na řídicím panelu Azure.If you run into any authorization errors, double-check this value against the Bing search endpoint in your Azure dashboard.

search_url = "https://api.cognitive.microsoft.com/bing/v7.0/search"

Vyhledávací dotaz přizpůsobíte tím, že místo search_term zadáte jinou hodnotu.Feel free to customize the search query by replacing the value for search_term.

search_term = "Azure Cognitive Services"

Vytvoření požadavkuMake a request

Tento blok 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.This block uses the requests library to call the Bing Web Search API and return the results as a JSON object. 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.The API key is passed in the headers dictionary, and the search term and query parameters are passed in the params dictionary. Seznam všech možností a parametrů najdete v dokumentaci k rozhraní API Bingu pro vyhledávání na webu verze 7.See Bing Web Search API v7 documentation for a complete list of options and parameters.

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ědiFormat and display the response

Objekt search_results obsahuje výsledky hledání a metadata, jako jsou související dotazy a stránky.The search_results object includes the search results and metadata such as related queries and pages. Tento kód používá k formátování a zobrazení odpovědi v prohlížeči knihovnu IPython.display.This code uses the IPython.display library to format and display the response in your browser.

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 GitHubuSample code on Github

Pokud chcete kód spustit na místním počítači, ukázka je dostupná na GitHubu.If you'd like to run this code locally, the complete sample is available on GitHub.

Další krokyNext steps

Viz takéSee also