Szybki start: wywoływanie interfejsu API wyszukiwania w sieci Web Bing za pomocą języka PythonQuickstart: Use Python to call the Bing Web Search API

Ostrzeżenie

Interfejsy API wyszukiwania Bing są przenoszone z Cognitive Services do usług Wyszukiwanie Bing.Bing Search APIs are moving from Cognitive Services to Bing Search Services. Od 30 października 2020 wszystkie nowe wystąpienia wyszukiwanie Bing muszą być obsługiwane zgodnie z procesem opisanym tutaj.Starting October 30, 2020, any new instances of Bing Search need to be provisioned following the process documented here. Interfejsy API wyszukiwania Bing obsługa administracyjna przy użyciu Cognitive Services będzie obsługiwana przez kolejne trzy lata lub do końca Umowa Enterprise, w zależności od tego, co nastąpi wcześniej.Bing Search APIs provisioned using Cognitive Services will be supported for the next three years or until the end of your Enterprise Agreement, whichever happens first. Instrukcje dotyczące migracji znajdują się w temacie wyszukiwanie Bing Services.For migration instructions, see Bing Search Services.

Użyj tego przewodnika Szybki Start, aby wykonać pierwsze wywołanie do interfejs API wyszukiwania w sieci Web Bing.Use this quickstart to make your first call to the Bing Web Search API. Ta aplikacja w języku Python wysyła żądanie wyszukiwania do interfejsu API i wyświetla odpowiedź JSON.This Python application sends a search request to the API, and shows the JSON response. Mimo że aplikacja jest zapisywana w języku Python, interfejs API jest usługą sieci Web RESTful zgodną z większością języków programowania.Although this application is written in Python, the API is a RESTful Web service compatible with most programming languages.

Ten przykład działa jako notes Jupyter w usłudze MyBinder.This example is run as a Jupyter notebook on MyBinder. Aby go uruchomić, wybierz wskaźnik uruchamiania spinacza:To run it, select the launch binder badge:

ObiektBinder

Wymagania wstępnePrerequisites

Tworzenie zasobu platformy AzureCreate an Azure resource

Zacznij korzystać z interfejs API wyszukiwania w sieci Web Bing, tworząc jeden z następujących zasobów platformy Azure:Start using the Bing Web Search API by creating one of the following Azure resources:

Wyszukiwanie Bing zasób wersji 7Bing Search v7 resource

  • Dostępne w Azure Portal do momentu usunięcia zasobu.Available through the Azure portal until you delete the resource.
  • Skorzystaj z warstwy cenowej bezpłatna do wypróbowania usługi i przeprowadź uaktualnienie później do warstwy płatnej dla środowiska produkcyjnego.Use the free pricing tier to try the service, and upgrade later to a paid tier for production.

Zasób obejmujący wiele usługMulti-service resource

  • Dostępne w Azure Portal do momentu usunięcia zasobu.Available through the Azure portal until you delete the resource.
  • Użyj tego samego klucza i punktu końcowego dla aplikacji w wielu Cognitive Services.Use the same key and endpoint for your applications, across multiple Cognitive Services.

Definiowanie zmiennychDefine variables

  1. Zamień wartość subscription_key na odpowiedni klucz subskrypcji ze swojego konta platformy Azure.Replace the subscription_key value with a valid subscription key from your Azure account.

    subscription_key = "YOUR_ACCESS_KEY"
    assert subscription_key
    
  2. Zadeklaruj punkt końcowy interfejsu API wyszukiwania w sieci Web Bing.Declare the Bing Web Search API endpoint. Możesz użyć globalnego punktu końcowego w poniższym kodzie lub użyć punktu końcowego niestandardowej domeny podrzędnej wyświetlanego w Azure Portal dla zasobu.You can use the global endpoint in the following code, or use the custom subdomain endpoint displayed in the Azure portal for your resource.

    search_url = "https://api.cognitive.microsoft.com/bing/v7.0/search"
    
  3. Opcjonalnie możesz dostosować zapytanie wyszukiwania, zastępując wartość parametru search_term .Optionally, customize the search query by replacing the value for search_term.

    search_term = "Azure Cognitive Services"
    

Wysyłanie żądaniaMake a request

Ten kod używa requests biblioteki do wywoływania interfejs API wyszukiwania w sieci Web Bing i zwracania wyników jako obiektu JSON.This code uses the requests library to call the Bing Web Search API and return the results as a JSON object. Klucz interfejsu API jest przekazywany do słownika headers, a wyszukiwany termin i parametry zapytania są przekazywane do słownika params.The API key is passed in the headers dictionary, and the search term and query parameters are passed in the params dictionary.

Aby uzyskać pełną listę opcji i parametrów, zobacz interfejs API wyszukiwania w sieci Web Bing wersji 7.For a complete list of options and parameters, see Bing Web Search API 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()

Formatowanie i wyświetlanie odpowiedziFormat and display the response

search_resultsObiekt zawiera wyniki wyszukiwania oraz takie metadane jak powiązane zapytania i strony.The search_results object includes the search results, and such metadata as related queries and pages. Ten kod formatuje i wyświetla odpowiedź w przeglądarce za pomocą biblioteki 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))

Kod przykładowy w witrynie GitHubSample code on GitHub

Aby uruchomić ten kod lokalnie, zobacz kompletny przykład dostępny w witrynie GitHub.To run this code locally, see the complete sample available on GitHub.

Następne krokiNext steps

Zobacz teżSee also