[파이썬] 기상청 지상 날씨 일별 자료 조회하기.
본문 바로가기
IT/파이썬

[파이썬] 기상청 지상 날씨 일별 자료 조회하기.

by SageIN 2021. 12. 15.
반응형

data.go.kr 에서 "기상청_지상(종관, ASOS) 일자료 조회서비스" 검색한다음 활용 신청을 합니다.

 

요청변수(Request Parameter)

항목명(국문)항목명(영문)항목크기항목구분샘플데이터항목설명

 

 

서비스키 ServiceKey 4 필수 - 공공데이터포털에서 받은 인증키
페이지 번호 pageNo 4 옵션 1 페이지번호 Default : 1
한 페이지 결과 수 numOfRows 4 옵션 10 한 페이지 결과 수 Default : 10
응답자료형식 dataType 4 옵션 XML 요청자료형식(XML/JSON) Default : XML
자료 코드 dataCd 4 필수 ASOS 자료 분류 코드(ASOS)
날짜 코드 dateCd 3 필수 DAY 날짜 분류 코드(DAY)
시작일 startDt 8 필수 20100101 조회 기간 시작일(YYYYMMDD)
종료일 endDt 8 필수 20100601 조회 기간 종료일(YYYYMMDD) (전일(D-1)까지 제공)
지점 번호 stnIds 3 필수 108 종관기상관측 지점 번호 (활용가이드 하단 첨부 참조)

 

출력결과(Response Element)

항목명(국문)항목명(영문)항목크기항목구분샘플데이터항목설명

 

 

결과코드 resultCode 2 필수 00 결과코드
결과메시지 resultMsg 50 필수 NORMAL_SERVICE 결과메시지
한 페이지 결과 수 numOfRows 4 필수 10 한 페이지 결과 수
페이지 번호 pageNo 4 필수 1 페이지번호
전체 결과 수 totalCount 4 필수 3 전체 결과 수
데이터 타입 dataType 4 필수 XML 응답자료형식 (XML/JSON)
시간 tm 10 필수 2010-01-01 일시
지점 번호 stnId 3 필수 108 종관기상관측 지점 번호
1.5m 지중온도 avgM15Te 6 옵션 9.2 1.5m 지중온도
9-9강수 n99Rn 6 옵션 1.1 9-9강수
최저 해면기압 minPs 6 옵션 1019.4 최저 해면기압
평균 상대습도 avgRhm 6 옵션 48 평균 상대습도
평균 상대습도 시각 minRhmHrmt 4 옵션 1137 평균 상대습도 시각
최대 순간 풍속 풍향 maxInsWsWd 6 옵션 34 최대 순간 풍속 풍향
평균 지면온도 avgTs 6 옵션 -4.6 평균 지면온도
최대 순간풍속 시각 max_ins_ws_hrmt 4 옵션 105 최대 순간풍속 시각
일 최심적설 시각 ddMesHrmt 4 옵션 0 일 최심적설 시각
최고 해면기압 시각 maxPsHrmt 4 옵션 5 최고 해면기압 시각
평균 증기압 avgPv 6 옵션 1.7 평균 증기압
최소 상대습도 minRhm 6 옵션 30 최소 상대습도
합계 일조 시간 sumSsHr 6 옵션 7.3 합계 일조 시간
가조시간 ssDur 6 옵션 9.6 가조시간
평균 해면기압 avgPs 6 옵션 1021.7 평균 해면기압
최대 풍속 maxWs 6 옵션 3.4 최대 풍속
평균 5cm 지중온도 avgCm5Te 6 옵션 -3.4 평균 5cm 지중온도
최저 초상온도 minTg 6 옵션 -13 최저 초상온도
최대 풍속 풍향 maxWsWd 6 옵션 7 최대 풍속 풍향
합계 소형증발량 sumSmlEv 6 옵션 0.6 합계 소형증발량
평균 전운량 avgTca 6 옵션 3.8 평균 전운량
1시간 최다 일사량 hr1MaxIcsr 6 옵션 1.51 1시간 최다 일사량
평균 이슬점온도 avgTd 6 옵션 -16.9 평균 이슬점온도
최고 해면 기압 maxPs 6 옵션 1024.4 최고 해면 기압
평균 20cm 지중온도 avgCm20Te 6 옵션 -0.7 평균 20cm 지중온도
일 최심적설 ddMes 6 옵션 2.2 일 최심적설
최저 기온 minTa 6 옵션 -12.7 최저 기온
최저 해면기압 시각 minPsHrmt 6 옵션 2356 최저 해면기압 시각
5.0m 지중온도 avgM50Te 6 옵션 17.2 5.0m 지중온도
최고 기온 maxTa 6 옵션 -3.6 최고 기온
풍정합 hr24SumRws 4 옵션 1608 풍정합
3.0m 지중온도 avgM30Te 6 옵션 15.2 3.0m 지중온도
평균10cm 지중온도 avgCm10Te 6 옵션 -1.7 평균10cm 지중온도
0.5m 지중온도 avgM05Te 6 옵션 2.4 0.5m 지중온도
1시간 최다 일사량 시각 hr1MaxIcsrHrmt 4 옵션 1100 1시간 최다 일사량 시각
최대 순간풍속 maxInsWs 6 옵션 7.5 최대 순간풍속
평균 전운량 avgTca 6 옵션 2.3 평균 전운량
평균 30cm 지중온도 avgCm30Te 6 옵션 0.5 평균 30cm 지중온도
1.0m 지중온도 avgM10Te 6 옵션 6.1 1.0m 지중온도
합계 일사 sumGsr 6 옵션 8.63 합계 일사
최대 풍속 시각 maxWsHrmt 4 옵션 2350 최대 풍속 시각
평균 현지기압 avgPa 6 옵션 1010.6 평균 현지기압
평균 풍속 avgWs 6 옵션 1.9 평균 풍속
일기현상 iscs 1000 옵션 -{박무}-{박무}{강도0}0300-0515. 일기현상
안개 계속 시간 sumFogDur 6 옵션 0.67 안개 계속 시간
합계 대형증발량 sumLrgEv 6 옵션 2.8 합계 대형증발량
합계 3시간 신적설 sumDpthFhsc 6 옵션 1.6 합계 3시간 신적설
일 최심신적설 ddMefs 6 옵션 25.8 일 최심신적설
일 최심신적설 시각 ddMefsHrmt 4 옵션 1355 일 최심신적설 시각
일강수량 sumRn 6 옵션 0 일강수량
1시간 최다 강수량 시각 hr1MaxRnHrmt 4 옵션 1441 1시간 최다 강수량 시각
1시간 최다강수량 hr1MaxRn 6 옵션 0.7 1시간 최다강수량
10분 최다강수량 시각 mi10MaxRnHrmt 4 옵션 1459 10분 최다강수량 시각
10분 최다 강수량 mi10_max_rn 6 옵션 0.5 10분 최다 강수량
평균 기온 avgTa 6 옵션 -7.6 평균 기온
최저 기온 시각 minTaHrmt 6 옵션 -12.7 최저 기온
최대 기온 시각 maxTaHrmt 4 옵션 1501 최대 기온 시각
최대 풍향 maxWd 6 옵션 70 최대 풍향
평균 중하층운량 avgLmac 6 옵션 2.3 평균 중하층운량

 

다양한 정보를 제공해준다.

json으로 데이터를 받거나  xml로 받아 파싱해주면 된다.

import requests
import json
import xlsxwriter

def getWthrDataList(date):
  url = 'http://apis.data.go.kr/1360000/AsosDalyInfoService/getWthrDataList'
  params = {'serviceKey':  '발급받키를 입력하세요.', # 서비스코드
  'numOfRows':'1', # 한페이지 결과수
  'pageNo': '1', # 페이지번호
  'dataType': 'JSON', # 응답자료형식
  'dataCd': 'ASOS',  # 자료코드
  'dateCd': 'DAY',  # 날짜코드
  'startDt': date,  # 조회 기간 시작일(YYYYMMDD)
  'endDt': date,  # 조회 기간 종료일(YYYYMMDD) (전일(D-1)까지 제공)
  'stnIds': '108'  # 종관기상관측 지점 번호 (108 서울)
  }

  response = requests.get(url, params=params)
  result = json.loads(response.text)
  items = result['response']['body']['items']['item']
  
  for item in items:
  	print(item)


if __name__ == '__main__':
    getWthrDataList("20210601")

결과

{'stnId': '108',
 'stnNm': '서울',
 'tm': '2021-06-01',
 'avgTa': '20.2', 
 'minTa': '15.9', 
 'minTaHrmt': '811',
 'maxTa': '23.9', 
 'maxTaHrmt': '1311', 
 'mi10MaxRn': '1.3', 
 'mi10MaxRnHrmt': '754', 
 'hr1MaxRn': '2.3', 
 'hr1MaxRnHrmt': '712', 
 'sumRnDur': '4.42', 
 'sumRn': '3.2', 
 'maxInsWs': '9.0', 
 'maxInsWsWd': '290', 
 'maxInsWsHrmt': '527', 
 'maxWs': '5.4', 
 'maxWsWd': '320', 
 'maxWsHrmt': '533', 
 'avgWs': '2.2', 
 'hr24SumRws': '1863', 
 'maxWd': '50', 
 'avgTd': '15.4', 
 'minRhm': '57', 
 'minRhmHrmt': '1322', 
 'avgRhm': '74.6', 
 'avgPv': '17.5', 
 'avgPa': '1003.9', 
 'maxPs': '1016.5', 
 'maxPsHrmt': '710', 
 'minPs': '1011.5', 
 'minPsHrmt': '221', 
 'avgPs': '1013.8', 
 'ssDur': '14.6', 
 'sumSsHr': '1.9', 
 'hr1MaxIcsrHrmt': '1000', 
 'hr1MaxIcsr': '2.03', 
 'sumGsr': '13.01', 
 'ddMefs': '', 
 'ddMefsHrmt': '', 
 'ddMes': '', 
 'ddMesHrmt': '',
 'sumDpthFhsc': '', 
 'avgTca': '8.1', 
 'avgLmac': '2.1', 
 'avgTs': '21.1', 
 'minTg': '13.9', 
 'avgCm5Te': '21.2', 
 'avgCm10Te': '20.5', 
 'avgCm20Te': '20.1', 
 'avgCm30Te': '19.7', 
 'avgM05Te': '19.0',
 'avgM10Te': '17.5', 
 'avgM15Te': '16.8', 
 'avgM30Te': '14.2', 
 'avgM50Te': '13.6', 
 'sumLrgEv': '2.7',
 'sumSmlEv': '3.9', 
 'n99Rn': '0.0', 
 'iscs': '{비}0433-0443. {비}0515-{비}{강도0}0600-0835. {박무}0755-0820. {비}1530-1625. {박무}2245-{박무}{강도0}2400-',
 'sumFogDur': ''
 }

 

지점 코드

지점 지점명 관리관서 지점 지점명 관리관서
90 속초 강원지방기상청 212 홍천 춘천기상대
93 북춘천 춘천기상대 216 태백 강원지방기상청
95 철원 강원지방기상청 217 정선군 강원지방기상청
98 동두천 수도권기상청 221 제천 청주기상지청
99 파주 수도권기상청 226 보은 청주기상지청
100 대관령 강원지방기상청 232 천안 대전지방기상청
101 춘천 춘천기상대 235 보령 대전지방기상청
102 백령도 수도권기상청 236 부여 대전지방기상청
104 북강릉 강원지방기상청 238 금산 대전지방기상청
105 강릉 강원지방기상청 239 세종 대전지방기상청
106 동해 강원지방기상청 243 부안 전주기상지청
108 서울 수도권기상청 244 임실 전주기상지청
112 인천 수도권기상청 245 정읍 전주기상지청
114 원주 강원지방기상청 247 남원 전주기상지청
115 울릉도 대구지방기상청 248 장수 전주기상지청
119 수원 수도권기상청 251 고창군 전주기상지청
121 영월 강원지방기상청 252 영광군 광주지방기상청
127 충주 청주기상지청 253 김해시 부산지방기상청
129 서산 홍성기상대 254 순창군 전주기상지청
130 울진 안동기상대 255 북창원 창원기상대
131 청주 청주기상지청 257 양산시 울산기상대
133 대전 대전지방기상청 258 보성군 광주지방기상청
135 추풍령 청주기상지청 259 강진군 목포기상대
136 안동 안동기상대 260 장흥 목포기상대
137 상주 대구지방기상청 261 해남 목포기상대
138 포항 대구지방기상청 262 고흥 광주지방기상청
140 군산 전주기상지청 263 의령군 창원기상대
143 대구 대구지방기상청 264 함양군 창원기상대
146 전주 전주기상지청 266 광양시 광주지방기상청
152 울산 울산기상대 268 진도군 목포기상대
155 창원 창원기상대 271 봉화 대구지방기상청
156 광주 광주지방기상청 272 영주 안동기상대
159 부산 부산지방기상청 273 문경 안동기상대
162 통영 부산지방기상청 276 청송군 대구지방기상청
165 목포 목포기상대 277 영덕 대구지방기상청
168 여수 광주지방기상청 278 의성 대구지방기상청
169 흑산도 광주지방기상청 279 구미 대구지방기상청
170 완도 목포기상대 281 영천 대구지방기상청
172 고창 전주기상지청 283 경주시 대구지방기상청
174 순천 광주지방기상청 284 거창 울산기상대
177 홍성 홍성기상대 285 합천 울산기상대
184 제주 제주지방기상청 288 밀양 울산기상대
185 고산 제주지방기상청 289 산청 창원기상대
188 성산 제주지방기상청 294 거제 부산지방기상청
189 서귀포 제주지방기상청 295 남해 부산지방기상청
192 진주 창원기상대      
201 강화 인천기상대      
202 양평 수도권기상청      
203 이천 수도권기상청      
211 인제 강원지방기상청      
반응형

댓글


TOP

Designed by 티스토리