본문 바로가기

Programming/etc

etc : google geocode open api 를 활용한 좌표 to 주소 변환을 알아볼게요~

주소를 좌표로 변환해주는 api는 국내의 대형 포탈사이트에서 제공하고 있습니다.
튜토리얼이랄 것도 없을만큼 무지무지 쉽게 잘 설명되어있기도 하죠^^
(naver같은 경우엔 XML 형태로만 뿌려서 DOM 파싱을 해야하는데... 뭐... 이해해야죠 ㅠㅠ)
물론 그 말은 해외 유명 포탈사이트는 거의 다 제공한다고 봐야겠습니다 ㅎㅎ

하지만! 좌표 to 주소 변환해주는 api는 daum 에서만 제공하고는 있으나
아쉽게도 주소를 동까지만 알려줍니다.
(번지수가 있어야 의미있는 api 서비스가 아닌가 하는데... 참 아쉽습니다)
(하지만, naver에서는 그런 api 자체가 없으니 뭔가 더욱 daum DNA가 멋있어 보입니다 두둥-)

썰이 길었네여.

자 우선 링크부터..
http://code.google.com/intl/ko-KR/apis/maps/documentation/geocoding/#ReverseGeocoding
라이센스는 1일 2500건(좌표to주소, 주소to좌표 모두 포함) 이라고 하며
갑작스레 request를 많이 보내면 거부하겠다는 의사표현을 아주 확실하게 하고 있습니다.
자 그럼 이제 ...

저의 전송 url입니다.
StringBuilder url = new StringBuilder("http://maps.googleapis.com/maps/api/geocode/json?latlng=");
url.append(targetCoordinate).append("&sensor=true").append("&language=ko"); 

자 그럼 parameter들을 보겠습니다.
우선 json형태로 달라는 명시를 위해 json이 디렉토리명으로 젤 끝에 붙구요~
위도경도 형태만으로 제공이 되는 api라 latlng=(위도경도좌표) 가 있구요.
sensor는 뭔지 모르겠지만 ture (서비스하는데에 있어 이상이 없어보여서...ㅠㅠ 한글도 이해 못하는 저의 무식함ㅠ)
그리구 나는 korean이고 서비스도 korean으로 할거고 주소도 korean으로 저장할거니 language=ko

끝. 입니다.
쿨한 google. map api 따위 요구도 안하고 그냥 줍니다.
그리고 쿨하게 귀찮게 굴면 막겠다는 라이센스를 내걸고 있습니다.
완전 쿨. -_-b