Hızlı Başlangıç: Python'da Bing Yerel İş Arama API'sine sorgu gönderme

Uyarı

30 Ekim 2020'de Bing Arama API'leri Azure yapay zeka hizmetlerinden Bing Arama Hizmetlerine taşındı. Bu belgeler yalnızca başvuru için sağlanır. Güncelleştirilmiş belgeler için Bing arama API'sinin belgelerine bakın. Bing araması için yeni Azure kaynakları oluşturma yönergeleri için bkz. Azure Market aracılığıyla Bing Arama kaynağı oluşturma.

Azure Bilişsel Hizmet olan Bing Yerel İş Arama API'sine istek göndermeyi öğrenmek için bu hızlı başlangıcı kullanın. Bu basit uygulama Python'da yazılmış olsa da API, HTTP istekleri oluşturabilen ve JSON ayrıştırabilen herhangi bir programlama diliyle uyumlu bir RESTful Web hizmetidir.

Bu örnek uygulama, arama sorgusu için API'den yerel yanıt verilerini alır.

Önkoşullar

  • Azure aboneliği - Ücretsiz bir abonelik oluşturun
  • Python 2.x veya 3.x.
  • Azure aboneliğinizi aldıktan sonra anahtarınızı ve uç noktanızı almak için Azure portal bir Bing Arama kaynağı oluşturun. Dağıtıldıktan sonra Kaynağa git'e tıklayın.

Uygulamanın tamamını çalıştırma

Aşağıdaki örnek, aşağıdaki adımlarda uygulanan yerelleştirilmiş sonuçları alır:

  1. Ana bilgisayar ve yol ile uç noktayı belirtmek için değişkenleri bildirme.
  2. Sorgu parametresini belirtin.
  3. İsteği oluşturan ve üst bilgiyi ekleyen Ocp-Apim-Subscription-Key arama işlevini tanımlayın.
  4. Üst bilgiyi Ocp-Apim-Subscription-Key ayarlayın.
  5. Bağlantıyı oluşturun ve isteği gönderin.
  6. JSON sonuçlarını yazdırma.

Bu tanıtım için tam kod aşağıdaki gibidir:

import http.client, urllib.parse
import json

# Replace the subscriptionKey string value with your valid subscription key.

subscriptionKey = 'YOUR-SUBSCRIPTION-KEY'

host = 'api.cognitive.microsoft.com'
path = '/bing/v7.0/localbusinesses/search'

query = 'restaurant in Bellevue'

params = '?q=' + urllib.parse.quote (query) + '&mkt=en-us'

def get_local():
    headers = {'Ocp-Apim-Subscription-Key': subscriptionKey}
    conn = http.client.HTTPSConnection (host)
    conn.request ("GET", path + params, None, headers)
    response = conn.getresponse ()
    return response.read ()

result = get_local()
print (json.dumps(json.loads(result), indent=4))

Sonraki adımlar