# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.service_client import SDKClient
from msrest import Configuration, Serializer, Deserializer
from .version import VERSION
from .operations.entities_operations import EntitiesOperations
from . import models
class EntitySearchAPIConfiguration(Configuration):
"""Configuration for EntitySearchAPI
Note that all parameters used to create this instance are saved as instance
attributes.
:param credentials: Subscription credentials which uniquely identify
client subscription.
:type credentials: None
:param str base_url: Service URL
"""
def __init__(
self, credentials, base_url=None):
if credentials is None:
raise ValueError("Parameter 'credentials' must not be None.")
if not base_url:
base_url = 'https://api.cognitive.microsoft.com/bing/v7.0'
super(EntitySearchAPIConfiguration, self).__init__(base_url)
self.add_user_agent('azure-cognitiveservices-search-entitysearch/{}'.format(VERSION))
self.credentials = credentials
[docs]class EntitySearchAPI(SDKClient):
"""The Entity Search API lets you send a search query to Bing and get back search results that include entities and places. Place results include restaurants, hotel, or other local businesses. For places, the query can specify the name of the local business or it can ask for a list (for example, restaurants near me). Entity results include persons, places, or things. Place in this context is tourist attractions, states, countries, etc.
:ivar config: Configuration for client.
:vartype config: EntitySearchAPIConfiguration
:ivar entities: Entities operations
:vartype entities: azure.cognitiveservices.search.entitysearch.operations.EntitiesOperations
:param credentials: Subscription credentials which uniquely identify
client subscription.
:type credentials: None
:param str base_url: Service URL
"""
def __init__(
self, credentials, base_url=None):
self.config = EntitySearchAPIConfiguration(credentials, base_url)
super(EntitySearchAPI, self).__init__(self.config.credentials, self.config)
client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)}
self.api_version = '1.0'
self._serialize = Serializer(client_models)
self._deserialize = Deserializer(client_models)
self.entities = EntitiesOperations(
self._client, self.config, self._serialize, self._deserialize)