구글 지오코딩 API 를 통해 위도,경도 데이터 가져오기
2021. 7. 3. 12:55ㆍ(Python) Pandas를 이용한 데이터분석
일단 구글 지도 서비스에 접속해서
새프로젝트를 만들려면
이름,전화번호 인증 카드번호 쓰기 등등 아주 귀찮은 일들이 많다.
이것들은 완료하고 새프로젝트를 만들면 API 키를 발급해준다
아주소중히 잘 저장한다.
구글 지도 서비스는 졸업작품 할때도 잘못하다가 과금이 나와서 내 파트너친구가 구글에 사정사정해서
돈을 안냈었기 때문에 조심해야한다.
그리고 Googlemaps 를 사용하기 위해서 아나콘다에 googlemaps 라이브러리를 설치해야한다.
conda prompt를 열고
conda install -c conda-forge googlemaps를 치고 깔아준다.
그리고 다시 돌아와서 코드를 입력한다.
## google 지오코딩 API 를 통해 , 위도 경도 데이터 가져오기
import googlemaps
import pandas as pd
my_key = "개인 API 키"
#구글맵스 객체 생성하기
maps = googlemaps.Client(key= my_key)
lat = [] #위도
lng = [] #경도
#장소( 또는 주소) 리스트
places = ["창원대학교","정우상가","해운대해수욕장"]
i = 0
for place in places:
i = i+1
try:
print(i,place)
#지오코딩 API 결과값 호출하여 geo_location 변수에 저장
geo_location = maps.geocode(place)[0].get('geometry')
lat.append(geo_location['location']['lat'])
lng.append(geo_location['location']['lng'])
except:
lat.append('')
lng.append('')
print(i)
#데이터 프래임으로 변경
df = pd.DataFrame({'위도':lat,'경도':lng},index=places)
print(df)
위도 경도 리스트를 만들어주고 장소리스트도 만들어준다.
나는 내가다니는 학교 창원대학교와 생각나는게 없어 정우상가와 내가 좋아하는 해운대해수욕장을 해봤다.
위도 경도 리스트에 API 결과값을 저장해주고
Data Frame으로 만들어주면
1 창원대학교
2 정우상가
3 해운대해수욕장
위도 경도
창원대학교 35.245595 128.691953
정우상가 35.228430 128.679427
해운대해수욕장 35.158698 129.160384
이런식으로 나온다
끝~
'(Python) Pandas를 이용한 데이터분석' 카테고리의 다른 글
Seaborn 을 이용한 데이터 시각화 (0) | 2021.07.09 |
---|---|
여러가지 시각화 그래프(Histogram & Scatter & Pie Chart & Box Plot) (0) | 2021.07.09 |
Matplotlib 을 통한 인구 이동 그래프(2) (0) | 2021.07.08 |
Matplotlib 을 통한 인구 이동 그래프(1) (0) | 2021.07.08 |
Pandas 데이터 프레임 (0) | 2021.07.01 |