2014년 3월 27일 목요일

기상청 날씨 api (by xml) stn_id, icon 속성(attribute) 정리


기상청에서 제공하는 실시간 xml 날씨 api가 존재한다.
http://www.kma.go.kr/XML/weather/sfc_web_map.xml 로 접속하면 된다.
아래와 같은 결과를 얻을 수 있따.
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<current xmlns="current">
  <weather year="2014" month="03" day="27" hour="15">
    <local stn_id="277" icon="" desc="-" ta="15.0">영덕</local>
    <local stn_id="162" icon="01" desc="맑음" ta="16.8">통영</local>
    <local stn_id="121" icon="" desc="-" ta="23.1">영월</local>
......



그런데 stn_id, icon 속성에 대한 설명이 없어서 그것에 대해서 정리하고자 포스팅 한다.


  • stn_id to region_id
    일반적인 날씨 api는 region_id를 사용한다. stn_id를 region_id로 변경하는 매칭 정보이다. (xml 주석으로 설명도 추가해 두었다)
    자바 프로퍼티 xml 방식으로 올린다.

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
    <properties>
        <!--
        ######################################################################
        #
        #  ㅇ 파일인코딩은 UTF-8로 한다(java api default)
        #     - http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Properties.html
        #  ㅇ 프로퍼티XML형태(<entry key="stn_id">region_id</entry>)로 작성
        #  ㅇ stn_id 를 region_id 대치
        #
        ###################################################################### 
         -->
        <comment>Weather stn_id region_id</comment>
        
        <!-- 속초 -->
        <entry key="90">11D20401</entry>
        <!-- 철원 -->
        <entry key="95">11D10101</entry>
        <!-- 동두천 -->
        <entry key="98">11B20401</entry>
        <!-- 문산 : 파주 -->
        <entry key="99">11B20305</entry>
        <!-- 대관령 -->
        <entry key="100">11D20201</entry>
        <!-- 춘천 -->
        <entry key="101">11D10301</entry>
        <!-- 백령도 -->
        <entry key="102">11A00101</entry>
        <!-- 강릉 -->
        <entry key="105">11D20501</entry>
        <!-- 동해 -->
        <entry key="106">11D20601</entry>
        <!-- 서울 -->
        <entry key="108">11B10101</entry>
        <!-- 인천 -->
        <entry key="112">11B20201</entry>
        <!-- 원주 -->
        <entry key="114">11D10401</entry>
        <!-- 울릉도 -->
        <entry key="115">11E00101</entry>
        <!-- 수원 -->
        <entry key="119">11B20601</entry>
        <!-- 영월 -->
        <entry key="121">11D10501</entry>
        <!-- 충주 -->
        <entry key="127">11C10101</entry>
        <!-- 서산 -->
        <entry key="129">11C20101</entry>
        <!-- 울진 -->
        <entry key="130">11H10101</entry>
        <!-- 청주 -->
        <entry key="131">11C10301</entry>
        <!-- 대전 -->
        <entry key="133">11C20401</entry>
        <!-- 추풍령 -->
        <entry key="135">11C10401</entry>
        <!-- 안동 -->
        <entry key="136">11H10501</entry>
        <!-- 상주 -->
        <entry key="137">11H10302</entry>
        <!-- 포항 -->
        <entry key="138">11H10201</entry>
        <!-- 군산 -->
        <entry key="140">21F10501</entry>
        <!-- 대구 -->
        <entry key="176">11H10701</entry>
        <!-- 전주 -->
        <entry key="146">11F10201</entry>
        <!-- 울산 -->
        <entry key="152">11H20101</entry>
        <!-- 마산 : 창원 -->
        <entry key="155">11H20302</entry>
        <!-- 광주 -->
        <entry key="156">11F20501</entry>
        <!-- 부산 -->
        <entry key="159">11H20201</entry>
        <!-- 통영 -->
        <entry key="162">11H20401</entry>
        <!-- 목포 -->
        <entry key="165">21F20801</entry>
        <!-- 여수 -->
        <entry key="168">11F20401</entry>
        <!-- 흑산도 -->
        <entry key="169">11F20701</entry>
        <!-- 완도 -->
        <entry key="170">11F20301</entry>
        <!-- 진도 -->
        <entry key="175">21F20201</entry>
        <!-- 제주 -->
        <entry key="184">11G00201</entry>
        <!-- 고산 -->
        <entry key="185">11G00501</entry>
        <!--성산포  -->
        <entry key="188">11G00101</entry>
        <!-- 서귀포 -->
        <entry key="189">11G00401</entry>
        <!-- 진주 -->
        <entry key="192">11H20701</entry>
        <!-- 강화 -->
        <entry key="201">11B20101</entry>
        <!-- 양평 -->
        <entry key="202">11B20503</entry>
        <!-- 이천 -->
        <entry key="203">11B20701</entry>
        <!-- 인제 -->
        <entry key="211">11D10201</entry>
        <!-- 홍천 -->
        <entry key="212">11D10302</entry>
        <!-- 태백 -->
        <entry key="216">11D20301</entry>
        <!-- 제천 -->
        <entry key="221">11C10201</entry>
        <!-- 보은 -->
        <entry key="226">11C10302</entry>
        <!-- 천안 -->
        <entry key="232">11C20301</entry>
        <!-- 보령 -->
        <entry key="235">11C20201</entry>
        <!-- 부여 -->
        <entry key="236">11C20501</entry>
        <!-- 금산 -->
        <entry key="238">11C20601</entry>
        <!-- 부안 -->
        <entry key="243">21F10602</entry>
        <!-- 임실 -->
        <entry key="244">11F10402</entry>
        <!-- 정읍 -->
        <entry key="245">11F10203</entry>
        <!-- 남원 -->
        <entry key="247">11F10401</entry>
        <!-- 장수 -->
        <entry key="248">11F10301</entry>
        <!-- 순천 -->
        <entry key="174">11F20405</entry>
        <!-- 장흥 -->
        <entry key="260">11F20304</entry>
        <!-- 해남 -->
        <entry key="261">11F20302</entry>
        <!-- 고흥 -->
        <entry key="262">11F20403</entry>
        <!-- 봉화 -->
        <entry key="271">11H10402</entry>
        <!-- 영주 -->
        <entry key="272">11H10401</entry>
        <!-- 문경 -->
        <entry key="273">11H10301</entry>
        <!-- 영덕 -->
        <entry key="277">11H10102</entry>
        <!-- 의성 -->
        <entry key="278">11H10502</entry>
        <!-- 구미 -->
        <entry key="279">11H10602</entry>
        <!-- 영천 -->
        <entry key="281">11H10702</entry>
        <!-- 거창 -->
        <entry key="284">11H20502</entry>
        <!-- 합천 -->
        <entry key="285">11H20503</entry>
        <!-- 밀양 -->
        <entry key="288">11H20601</entry>
        <!-- 산청 -->
        <entry key="289">11H20703</entry>
        <!-- 거제 -->
        <entry key="294">11H20403</entry>
        <!-- 남해 -->
        <entry key="295">11H20405</entry>
        
        <!--
             사용안함 
            고창 : 172, 고창군 : 251, 영광군  : 252, 김해시 : 253, 순창군 : 254, 
            북창원 : 255, 양산시 : 257, 보성군 : 258, 강진군 : 259, 의령군 : 263, 
            함양군 : 264, 광양시 : 266, 청송군 : 276, 경주시 : 283, 북강릉 : 104, 
            정선 : 217, 
         -->
    </properties>





  • icon
    아이콘에 해당하는 실제 값을 표로 표현해 보았다. 사용 안하는 값도 있었다
  • 아이콘날씨
    01맑음
    02구름조금
    03구름많음
    04흐림
    05
    06
    07소나기
    08
    09
    10
    11
    12비 또는 눈
    13눈 또는 비
    14천둥번개
    15안개
    16황사
    17박무
    18연무
    19
    20가끔 비, 한때 비
    21가끔 눈, 한때 눈
    22가끔 비 또는 눈, 한때 비 또는 눈
    23가끔 눈 또는 비, 한때 눈 또는 비