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:
- Ana bilgisayar ve yol ile uç noktayı belirtmek için değişkenleri bildirme.
- Sorgu parametresini belirtin.
- İsteği oluşturan ve üst bilgiyi ekleyen
Ocp-Apim-Subscription-Key
arama işlevini tanımlayın. - Üst bilgiyi
Ocp-Apim-Subscription-Key
ayarlayın. - Bağlantıyı oluşturun ve isteği gönderin.
- 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))