새소식

etc

카카오 REST API 이용하여 특정 장소의 위도(latitude) 경도(longitude) 알아내기

  • -

어떤 장소의 위도 경도가 필요할 때가 있습니다!

지도 위에 마커를 찍거나 할때 정확한 위, 경도 값이 있다면 표현하기 쉽겠죠??

그래서 카카오의 REST API를 이용하여 위, 경도를 어떻게 알아낼 수 있는지

파이썬으로 해보겠습니다

 

REST API 키 발급 받기

우선 아래 사이트로 접속합니다. 그리고 우 상단의 내 애플리케이션을 클릭합니다

https://developers.kakao.com/

 

Kakao Developers

카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.

developers.kakao.com

 

그리고 애플리케이션 추가하기를 눌러줍니다

 

애플리케이션 만들때 앱 아이콘은 등록해도 되고 안해도 되며

앱 이름과 회사 이름을 입력합니다

 

그러면 방금 막 만들었기 때문에 아직 플랫폼이 설정되어 있지 않습니다

이에 REST API를 이용하기 위해서 웹을 설정합니다

 

플랫폼 설정하기를 눌러서 Web 플랫폼 등록을 눌러줍니다

 

그러면 위와 같은 창이 나옵니다

여기서 사이트 도메인에 'http://localhost:8080'을 입력하고 저장합니다

 

요약정보로 돌아가면 REST API 키가 있습니다

이 키를 이용해야 위 경도를 받아올 수 있습니다

(API 키가 노출되지 않도록 주의해주세요!!)

 

파이썬 코드 작성

이제 키를 발급 받았으니 파이썬 코드를 작성합니다

코드는 정말 간단합니다

https://developers.kakao.com/docs/latest/ko/local/dev-guide

 

Kakao Developers

카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.

developers.kakao.com

위 사이트에 가시면 REST API 테스트도 가능하며

어떤 정보를 응답으로 받는지 확인할 수 있습니다

 

저는 주소를 입력받으면 그 주소의 위 경도를 반환하도록 하였습니다

지명의 위경도를 알고싶다면 그에 대한 설명도 키워드로 장소 검색에 나와있으니 참고하세요!!

아래 코드는 주소 검색 파이썬 코드 예제입니다

 

1
2
3
4
5
6
7
8
9
import requests
from urllib.parse import urlparse
address = '서울 종로구 평동 233 3106호'
url = 'https://dapi.kakao.com/v2/local/search/address.json?&query=' + address
result = requests.get(urlparse(url).geturl(), headers={'Authorization''KakaoAK REST_API_KEY'}).json()
match_first = result['documents'][0]['address']
lat = float(match_first['y'])
lng = float(match_first['x'])
print(lat, lng)  # 위도(lat) 경도(long)
cs

REST_API_KEY 부분에 위에서 확인한 API 키를 넣어주시면 됩니다

그리고 각자 원하는 정보를 뽑아내면 됩니다

 

응답 json 형식을 보면

제가 원하는 위, 경도 정보는 documents > address > x,y에 있습니다

그래서 위와 같이 parsing 하였습니다

간단하죠??? 다시 보니까 documents > x,y로 바로 얻어도 될것 같네요

위의 코드를 이해할줄 안다면 REST API를 이용해 원하는 정보를 모두 얻으실 수 있을거에요

 

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.