본문 바로가기
Python

[Python] 카카오 주소 검색 api 사용해 주소의 위경도 알아내기

by teamnova 2022. 9. 23.
728x90

카카오 open api를 사용해 원하는 주소의 위경도 값을 알아내보겠습니다.

open api 중 주소검색하기 api를 사용합니다.

 

먼저 api를 사용하기 위해선 카카오 api 키를 받아야 합니다.

Kakao Developers 사이트에서 내 어플리케이션을 등록하고 앱 설정 > 요약 정보에서 rest api 키를 사용하면 됩니다.

 

 

주소 검색하기 api의 상세 세팅 값은 개발 가이드 | Kakao Developers 문서 여기서 확인할 수 있습니다.

 

 

아래는 api를 사용한 코드입니다.

import requests


def search_kakao_coordinate(address: str):
    url = 'https://dapi.kakao.com/v2/local/search/address.json'
    # rest_api_key = secrets['Kakao']['rest_key']
    rest_api_key = conf.KAKAO_REST_KEY

    header = {'Authorization': 'KakaoAK ' + rest_api_key}
    params = dict(query=address, analyze_type='exact')

    result = requests.get(url, headers=header, params=params).json()

    if 'errorType' in result:
        result['success'] = False
    else:
        result['success'] = True

    return result
    

# 위경도
addr_api_res = search_kakao_coordinate(shop.road_address)

# api 조회 성공 및 결과 존재 시
if addr_api_res['success'] and addr_api_res['meta']['total_count'] > 0:
    addr = addr_api_res['documents'][0]
    latitude = addr['y']
    longitude = addr['x']