Szybki start: wywoływanie interfejsu API wyszukiwania w sieci Web Bing za pomocą języka Python
Ostrzeżenie
30 października 2020 r. interfejsy API Wyszukiwanie Bing zostały przeniesione z usług Azure AI do usług Wyszukiwanie Bing Services. Ta dokumentacja jest udostępniana tylko do celów referencyjnych. Aby uzyskać zaktualizowaną dokumentację, zobacz dokumentację interfejsu API wyszukiwania Bing. Aby uzyskać instrukcje dotyczące tworzenia nowych zasobów platformy Azure na potrzeby wyszukiwania Bing, zobacz Tworzenie zasobu Wyszukiwanie Bing za pośrednictwem Azure Marketplace.
Skorzystaj z tego przewodnika Szybki start, aby wykonać pierwsze wywołanie interfejsu API wyszukiwania w Internecie Bing. Ta aplikacja w języku Python wysyła żądanie wyszukiwania do interfejsu API i wyświetla odpowiedź JSON. Mimo że ta aplikacja jest napisana w języku Python, interfejs API jest usługą internetową zgodną ze standardem RESTful z większością języków programowania.
Ten przykład działa jako notes Jupyter w usłudze MyBinder. Aby go uruchomić, wybierz wskaźnik launch binder:
Wymagania wstępne
Tworzenie zasobu platformy Azure
Zacznij korzystać z interfejsu API wyszukiwania w Internecie Bing, tworząc jeden z następujących zasobów platformy Azure:
zasób Wyszukiwanie Bing w wersji 7
- Dostępne za pośrednictwem Azure Portal do momentu usunięcia zasobu.
- Użyj warstwy cenowej Bezpłatna, aby wypróbować usługę, a następnie uaktualnij ją do warstwy płatnej dla środowiska produkcyjnego.
- Dostępne za pośrednictwem Azure Portal do momentu usunięcia zasobu.
- Użyj tego samego klucza i punktu końcowego dla aplikacji w wielu usługach azure AI.
Definiowanie zmiennych
Zamień wartość
subscription_key
na odpowiedni klucz subskrypcji ze swojego konta platformy Azure.subscription_key = "YOUR_ACCESS_KEY" assert subscription_key
Zadeklaruj punkt końcowy interfejsu API wyszukiwania w sieci Web Bing. Możesz użyć globalnego punktu końcowego w poniższym kodzie lub użyć niestandardowego punktu końcowego poddomeny wyświetlanego w Azure Portal dla zasobu.
search_url = "https://api.bing.microsoft.com/v7.0/search"
Opcjonalnie dostosuj zapytanie wyszukiwania, zastępując wartość .
search_term
search_term = "Azure Cognitive Services"
Wysyłanie żądania
Ten kod używa requests
biblioteki do wywoływania interfejsu API wyszukiwania w Sieci Web Bing i zwracania wyników jako obiektu JSON. Klucz interfejsu API jest przekazywany do słownika headers
, a wyszukiwany termin i parametry zapytania są przekazywane do słownika params
.
Aby uzyskać pełną listę opcji i parametrów, zobacz Interfejs API wyszukiwania w sieci Web Bing w wersji 7.
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 odpowiedzi
Obiekt search_results
zawiera wyniki wyszukiwania i takie metadane jak powiązane zapytania i strony. Ten kod formatuje i wyświetla odpowiedź w przeglądarce za pomocą biblioteki 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))
Kod przykładowy w witrynie GitHub
Aby uruchomić ten kod lokalnie, zobacz kompletny przykład dostępny w witrynie GitHub.