-
카카오 API와 openpyxl를 이용한 서울시 무인발급기 지도에 표시하기포트폴리오 2020. 6. 10. 18:06
카카오 API와 openpyxl를 이용한 서울시 무인발급기 위치 확인하기
- https://www.minwon.go.kr/new_info/customer/AA090_CM010_No_man_popup.jsp
-
'설치장소' 이미지를 누르면 xls 다운로드됨
import openpyxl import requests import folium
openpyxl을 이용하여 무인발급기 주소, 발급기명 저장
-
xls 파일은 오래된 파일이라 인식 X ==> xlsx 파일로 저장하고 진행
-
참고 블로그 : https://doitnow-man.tistory.com/159
ex = openpyxl.load_workbook('./2020년04월30일기준_무인민원발급창구_설치장소_및_운영시간(민원24).xlsx') muin = ex['4월30일'] num = 2 address = [] name = [] while True: if '서울' in muin.cell(row=num, column=6).value: # 주소 저장 address_b = muin.cell(row=num, column=6).value address_a = address_b.split('(')[0] address.append(address_a) # 이름 저장 name_b = muin.cell(row=num, column=3).value name.append(name_b) num+=1 continue else: break # print(len(address)) # print(len(name))
kakao API를 이용한 위도,경도 얻는 함수 작성
def getLatLng(address): app_key = 'KakaoAK ' + '__REST API Key__' url = 'https://dapi.kakao.com/v2/local/search/address.json' # endpoint params = { 'query' : address, 'page' : '', 'AddressSize' : '' } headers = {'Authorization' : app_key} response = requests.get(url, headers=headers, params=params) status_code = response.status_code resp = response.json() if resp['documents'] != []: longitude = resp['documents'][0]['x'] # 경도 latitude = resp['documents'][0]['y'] # 위도 return longitude, latitude else: return (0, 0)
xpoint = [] ypoint = [] for i in address: x, y= getLatLng(i) xpoint.append(x) # 경도 저장 ypoint.append(y) # 위도 저장
지도 및 마커 추가
map_list = folium.Map(location=[37.566659527,126.978346859], zoom_start=10) for item in range(len(address)): latitude = float(ypoint[item]) longtitude = float(xpoint[item]) # 예외처리 : 서울특별시 용산구 이태원로 22(용산동3가)의 정보 못불러옴 if latitude == 0: continue folium.Marker( location = [latitude, longtitude], popup = name[item], icon=folium.Icon(color='red', icon='glyphicon glyphicon-print') # icon 적용 할 때 부트스트랩 최신버전을 사용하면 표시안됨. 3버전 이용 ).add_to(map_list) map_list
Make this Notebook Trusted to load map: File -> Trust Notebook서울시 무인발급기 위치 확인 하기.html1.10MB'포트폴리오' 카테고리의 다른 글
팀 프로젝트 (0) 2020.08.18 스타벅스 매장 지도에 표시하고 csv 파일로 저장하기 (2) 2020.06.19 카카오 API를 사용하여 '호식이두마리치킨' 가맹점 찾기 (2) 2020.06.15 카카오 API를 이용한 지도에 식당위치 표시하기 (0) 2020.06.10