경고
2020년 10월 30일, Bing Search API는 Azure AI 서비스에서 Bing Search Services로 이동했습니다. 이 문서는 참조용으로만 제공됩니다. 업데이트된 문서는 Bing search API 문서를 참조하세요. Bing 검색을 위한 새 Azure 리소스 만들기에 대한 지침은 Azure Marketplace를 통해 Bing Search 리소스 만들기를 참조하세요.
이 빠른 시작을 사용하여 Bing Web Search API를 처음 호출합니다. 이 Python 애플리케이션은 API에 검색 요청을 보내고 JSON 응답을 표시합니다. 이 애플리케이션은 Python으로 작성되었지만 API는 대부분의 프로그래밍 언어와 호환되는 RESTful 웹 서비스입니다.
이 예제는 MyBinder에서 Jupyter Notebook으로 실행됩니다. 실행하려면 시작 바인더 배지를 선택합니다.
필수 조건
Azure 리소스 만들기
다음 Azure 리소스 중 하나를 만들어 Bing Web Search API 사용을 시작합니다.
- 리소스를 삭제할 때까지 Azure Portal을 통해 사용할 수 있습니다.
- 무료 가격 책정 계층을 사용하여 서비스를 체험하고 나중에 프로덕션용 유료 계층으로 업그레이드합니다.
- 리소스를 삭제할 때까지 Azure Portal을 통해 사용할 수 있습니다.
- 여러 Azure AI 서비스에서 애플리케이션에 동일한 키와 엔드포인트를 사용합니다.
변수 정의
subscription_key
값을 Azure 계정의 유효한 구독 키로 바꾸십시오.subscription_key = "YOUR_ACCESS_KEY" assert subscription_key
Bing Web Search API 엔드포인트를 선언합니다. 다음 코드에서 전역 엔드포인트를 사용하거나 리소스에 대한 Azure Portal에 표시되는 사용자 지정 하위 도메인 엔드포인트를 사용할 수 있습니다.
search_url = "https://api.bing.microsoft.com/v7.0/search"
필요에 따라
search_term
값을 바꿔 검색 쿼리를 맞춤 설정할 수 있습니다.search_term = "Azure Cognitive Services"
요청하기
이 코드는 라이브러리를 requests
사용하여 Bing Web Search API를 호출하고 결과를 JSON 개체로 반환합니다. API 키는 headers
사전에 전달되고, 검색 용어와 쿼리 매개 변수는 params
사전에 전달됩니다.
옵션 및 매개 변수의 전체 목록은 Bing Web Search API v7을 참조하세요.
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()
응답 서식 지정 및 표시
개체에는 search_results
검색 결과 및 관련 쿼리 및 페이지와 같은 메타데이터가 포함됩니다. 이 코드는 라이브러리를 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))
GitHub의 샘플 코드
이 코드를 로컬로 실행하려면 GitHub에서 사용할 수 있는 전체 샘플을 참조하세요.
다음 단계
Bing Web Search API 싱글 페이지 애플리케이션 튜토리얼