개발이야기/Python

주소를 위경도로 변환 naver cloud platform 활용

원효대사해골물 2020. 9. 20. 23:23

1. 한글 도로 주소를 위경도로 변환 / NAVER CLOUD PLATFORM 활용

 

2. API 주소 등의 변화로 기존 블로그 내용이 잘 안되어서 기록에 남긴다.

 

** 아래 블로그 내용이 너무 설명이 잘되어 있다. 아래 링크된 블로그 내용을 보면 더 이해가 빠름.

단 제가 아래 쓴 코드는 api를 통해 json을 호출하는 핵심만 기록하여 이해하기 좋을 수 있음.

blog.naver.com/rising_n_falling/221596375078

 

 

3. 절차

 

 1. 한글 도로명 주소

 2. 한글을 URL에서 읽을 수 있도록 변환

  from urllib import parse

  parse.quote(target)

 

 3. NAVER API + 주소

 4. ID 및 KEY값 ADD

 5. OPEN URL

 6. JSON LOAD

 

 

NAVER CLOUD 주소

www.ncloud.com/

 

NAVER CLOUD PLATFORM

cloud computing services for corporations, IaaS, PaaS, SaaS, with Global region and Security Technology Certification

www.ncloud.com

로그인 후 서비스 클릭

 

 

서비스에서 Ctrl + F / MAPS 검색

 

 

이용 신청하기 클릭

 

 

이용 신청하기 클릭 후 이용 신청을 하고 Client ID 및 Client Secret을 받아야한다!

 

 

import urllib.request
from urllib import parse
import json

# 원하는 주소
target = "서울특별시 관악구 신림동1길  21"
# 주소를 변환 URL에서 활용을 위해
target_u = parse.quote(target)
# 현 200920 시점 NAVER CLOUD URL 주소
url = "https://naveropenapi.apigw.ntruss.com/map-geocode/v2/geocode?query=" + target_u  # json 결과
request = urllib.request.Request(url)
# ADD ID
request.add_header("X-NCP-APIGW-API-KEY-ID", "YOUR ID FROM NAVER CLOUD")
# ADD API KEY
request.add_header("X-NCP-APIGW-API-KEY", "YOUR PW FROM NAVER CLOUD")
# URL OPEN
response = urllib.request.urlopen(request)
# JSON 값
res_body = response.read().decode('utf-8')

#JSON 값을 편집하는건 타 블로그에도 많이 나와있어서 생략