머신러닝/머신러닝 할 때 꼭 짚고 넘어갈 것

머신러닝 전 꼭 알고 가자! - 구글 맵 API : Geocoding API 설정하는 방법

Cong_S 2022. 5. 4. 16:58

개발을 할 때 뗄레야 뗄 수 없는 필수 중의 필수!

API를 설정하는 방법에 대해 알아보자.

 

우선 API 가 무엇인지 알아야한다.

 

“API(Application Programming Interface, 응용 프로그램 프로그래밍 인터페이스)는 응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다.” 

 

사전적 정의는 이러하다. 

이해하기 쉽게 말하면 프로그램과 프로그램을 이어주는 매개체, 인터페이스를 뜻한다.

 

예시를 들면

맛집 정보를 알려주는 어플리케이션에서 지도 버튼을 누르면 구글 지도 앱으로 들어가 위치를 알려준다거나

어떤 홈페이지에서 회원가입이나 로그인을 할 때 구글, 네이버, 다음 등 다양한 방법을 통해 로그인을 한다거나

물체의 사진을 찍어 해당 사진이 어떤 물체인지 알려주고 바로 관련 영상을 추천한다거나

 

위 예시처럼

API는 수많은 응용 방법들을 통해 프로그램과 프로그램을 이어주는 매개체의 역할을 하고 있다.

 

그 중 대표적인 예로 구글의 맵 API , Geocoding API를 설정하는 방법에 대해 알아보자.

 

 

구글 맵 API를 통해 실제 경찰서의 위치를 기반으로 위치 데이터를 작성하려고 하는 상황이다.

import googlemaps

만약 import를 했을 때 에러가 뜬다면 설치가 안 되어있어서 끈 에러이니

pip install googlemaps

컴퓨터 검색창에서 anaconda prompt 를 실행시켜 위 코드로 googlemaps를 설치해주자.

 

 

 

이제 구글맵스 API 페이지로 들어가 API 키를 생성한다.

 

키까지 받았다면 이젠 받은 키를 이용해 구글맵스 api 를 사용하면 된다

 

 

import googlemaps
gmaps_key = "자신의 키를 입력합니다" 
gmaps = googlemaps.Client(key=gmaps_key)

키를 사용할 준비도 끝났으므로 변수에 저장해두고 

# API 호출 (API CALL),json 
gmaps.geocode('서울중부경찰서', language='ko')

API를 호출하여 사용하면 된다.

 서울중부경찰서의 데이터를 먼저 불러와보았다. 이 중 우리가 필요한 데이터만을 억세싱해 사용하면 된다.

아래는 반복문을 통해 모든 데이터를 가져온 것.

station_address = []
for name in station_names:   # = '서울중부경찰서'
    result = gmaps.geocode(name, language='ko')
    
    if len(result) != 0 :    # 데이터가 없는 경우엔 그냥 넘어감
        station_address.append(result[0]['formatted_address'])

 

데이터 프레임에서 가지고 있던 경찰서의 이름을

구글 맵 API 를 통해 주소 정보를 가져온 모습이다.

 

지금까지 구글 맵 API 를 설정하고 활용하는 방법에 대해 알아보았다.

다양한 API를 이용해 더 다양한 프로그래밍을 하도록 하자.