Szybki start: wyszukiwanie wiadomości przy użyciu języka Python i interfejsu API REST wyszukiwania wiadomości Bing

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.

Użyj tego przewodnika Szybki start, aby wykonać pierwsze wywołanie interfejsu API wyszukiwania wiadomości Bing. Ta prosta aplikacja w języku Python wysyła zapytanie wyszukiwania do interfejsu API i przetwarza wynik 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.

Aby uruchomić ten przykładowy kod jako notes Jupyter w usłudze MyBinder, wybierz wskaźnik uruchamiania narzędzia binder :

uruchamianie narzędzia binder

Kod źródłowy tego przykładu jest dostępny także w witrynie GitHub.

Tworzenie zasobu platformy Azure

Zacznij korzystać z interfejsu API wyszukiwania wiadomości 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.

Zasób z wieloma usługami

  • 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.

Tworzenie i inicjowanie aplikacji

Utwórz nowy plik języka Python w ulubionym środowisku IDE lub edytorze, a następnie zaimportuj moduł żądania. Utwórz zmienne dla klucza subskrypcji, punktu końcowego i terminu wyszukiwania. 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.

import requests

subscription_key = "your subscription key"
search_term = "Microsoft"
search_url = "https://api.cognitive.microsoft.com/bing/v7.0/news/search"

Tworzenie parametrów dla żądania

Dodaj klucz subskrypcji do nowego słownika przy użyciu ciągu Ocp-Apim-Subscription-Key jako klucza. Zrób to samo dla parametrów wyszukiwania.

headers = {"Ocp-Apim-Subscription-Key" : subscription_key}
params  = {"q": search_term, "textDecorations": True, "textFormat": "HTML"}

Wysyłanie żądania i odbieranie odpowiedzi

  1. Biblioteka żądań umożliwia wywołanie interfejsu API wyszukiwania wizualnego Bing przy użyciu klucza subskrypcji oraz obiektów słownika utworzonych w poprzednim kroku.

    response = requests.get(search_url, headers=headers, params=params)
    response.raise_for_status()
    search_results = json.dumps(response.json())
    
  2. Uzyskaj dostęp do opisów artykułów zawartych w odpowiedzi z interfejsu API, który jest przechowywany jako search_results obiekt JSON.

    descriptions = [article["description"] for article in search_results["value"]]
    

Wyświetlanie wyników

Następnie opisy te można przedstawić w formie tabeli, w której słowa kluczowe wyszukiwania są wyróżnione za pomocą pogrubienia.

from IPython.display import HTML
rows = "\n".join(["<tr><td>{0}</td></tr>".format(desc)
                  for desc in descriptions])
HTML("<table>"+rows+"</table>")

Następne kroki