국가 지하수 정보센터에서 데이터를 써야할 일이 생겨서 들어가보았더니, 국가 지하수 정보센터는 오픈 API 서비스를 제공한다. 속성 정보에 대한 데이터를 외부에서 활용할 수 있도록 XML 또는 JSON 형태로 데이터를 제공해주는데, 요즘은 JSON을 많이 사용한다고들 하니 나는 JSON으로 받기로 했다.
먼저 인증키를 발급받아야 사용할 수 있는데, 오픈 API 신청 메뉴에 들어가서 신청할 서비스를 선택한 후 신청서 양식을 제출하면 된다. 근데 아무것도 입력 안하고 그냥 신청버튼 눌러도 발급 된다. 굿~
아무튼 나는 국가 지하수 측정자료 조회 서비스를 신청했는데, JSON 조회 페이지를 클릭해보면 다음과 같은 정보를 확인할 수 있다.
상세 주소에 자기가 받은 인증키 값을 작성하고, 요청 변수를 입력해주면 링크를 타고 바로 확인 할 수 있다. 나는 바보같이 필수 여부를 안 보고 gennum 하나만 입력하고 안된다고 찡찡거렸는데 여러분은 그런 바보짓 하지 마세요..
상세주소는 아래처럼 입력하면 됩니다. (변수값은 필요한대로 바꾸면 됨)
http://www.gims.go.kr/api/data/observationStationService/getGroundwaterMonitoringNetwork?KEY=인증키&type=JSON&gennum=65004&begindate=20210101&enddate=20220101
링크를 들어가보면 아래처럼 어마무시하게 나오는데, 얘를 python을 이용해서 csv 파일로 보기좋게 저장해봅시다.
import requests
import json
import csv
import pandas as pd
# 관측소번호, 시작날짜, 종료날짜 입력 필수
url = requests.get("인증키&요청변수 입력한 URL")
text = url.text
# JSON 데이터에 액세스
data = json.loads(text)
df = pd.json_normalize(data['response']['resultData'])
# csv 저장
df.to_csv("sample.csv")
이렇게 CSV 파일로 저장할 수 있답니다~~
끗~!
'개발 일지' 카테고리의 다른 글
[Django 배포] 장고 배포 전 시크릿 키 숨기기 (0) | 2022.07.20 |
---|---|
[개발일지] 무.물.보 : 무엇이든 물에 대해 물어보세요! (0) | 2022.07.18 |
[개발일지] 트위터 맛집 검색기 업데이트 : 그룹별 검색 기능 (0) | 2022.01.29 |
배포한 사이트에 구글 애드센스 넣기 (not 블로그, 티스토리 등등) (0) | 2022.01.26 |
[개발일지] 트위터 맛집 검색기 개발일지 (0) | 2022.01.26 |