728x90
이번 프로젝트는 별거 없다.
Folium이라는 패키지와 Kakao 지도 API를 통해 아래 첨부 이미지처럼 내 회사 위치인 합정 근처에 GS25가 어디에 있는지 지도로 표시하고자 한다.
이번 분석? 분석이라고 하기도 좀 그렇지만 필요한 것은 다 알겠지만 우선 pip install folium으로 패키지를 우선 임포트해야되며, 또한 kakao 지도 api를 사용할 예정이라 아래 링크에 들어가서 가입해야 된다
그러면 계정에 API 값이 발급되는데 그걸 사용할 것이다.
어려운거 하나도 없다. 아래 작성한 코드만 봐도 굉장히 간단하다!
import requests
import folium
import pandas as pd
#카카오 지도에서 검색하고자하는 위치 키워드
searching = '합정 GS25'
url = 'https://dapi.kakao.com/v2/local/search/keyword.json?query={}'.format(searching)
headers = {
"Authorization": "KakaoAK 여기에 Kakao api 추가"
}
#json 형태로 데이터가 주어진다
places = requests.get(url, headers = headers).json()['documents']
#우리가 필요한 위도/경도/GS25 지점이름 데이타를 가져오고 Dataframe 형태로 변환
lat=[]
lon=[]
name=[]
for i in places:
lat.append(i['y'])
lon.append(i['x'])
name.append(i['place_name'])
add=pd.DataFrame()
add['lat']=lat
add['lon']=lon
add['name']=name
#위도/경도 데이타 타입이 문자열이라 float으로 변환
add['lat']=add['lat'].apply(lambda x: float(x))
add['lon']=add['lon'].apply(lambda x: float(x))
#folium 패키지로 카카오API에서 받아온 GS25 위도 경도 위치를 표시한다
#지도를 어디 중심으로 표시할지를 설정해줘야되는데 여기서는 카카오에서 받아온 1번째 GS25 지점을 기준으로 설정
map = folium.Map(location=[add['lat'][0],add['lon'][0]], zoom_start=15)
for index, row in add.iterrows():
folium.Marker(location=[row['lat'],row['lon']], popup=row['name'], icon=folium.Icon(color='red')).add_to(map)
#folium 지도 파일 저장
map.save('gs25.html')
성의없는 코딩 끝
728x90
반응형
'문송충의 코딩하기 > 파이썬 데이터 분석' 카테고리의 다른 글
공공데이터 Open API를 통해 삼성전자 주주 구성 분석하기 With Python (0) | 2020.07.15 |
---|---|
카카오 API를 활용한 동네 브랜드별 편의점 점포 수 구하기 with Python (0) | 2020.07.14 |
주가와 검색량(Queries)의 상관 관계 분석 (0) | 2020.07.13 |
Twitter에서 "황희찬"키워드가 포함된 Mention 가져오기 (1) | 2020.07.11 |
Amazon Products Reviews 분석 #1 - 데이터 가져오기 (0) | 2020.07.03 |
댓글