※ 기상청에서는 rss 서비스를 이용하기보단 공공데이터포털의 오픈 api를 사용하기를 권장하고있습니다.

기상청 : http://www.kma.go.kr/index.jsp

공공데이터포털 : https://www.data.go.kr/

 

 

 

- 기상청에서 제공하는 기상 예보 RSS서비스를 사용하는 법을 알아봅시다.

 

 

RSS란 ?

RSS(Really Simple Syndication, Rich Site Summary)란 블로그처럼 컨텐츠 업데이트가 자주 일어나는 웹사이트에서, 업데이트된 정보를 쉽게 구독자들에게 제공하기 위해 XML을 기초로 만들어진 데이터 형식입니다. RSS서비스를 이용하면 업데이트된 정보를 찾기 위해 홈페이지에 일일이 방문하지 않아도 업데이트 될 때마다 빠르고 편리하게 확인할 수 있습니다.

 



 

※ 기상청에서 제공하는 데이터의 저작권 보호 및 정책은 아래를 참고하세요.

http://web.kma.go.kr/global/footer/copyright.jsp

 

참고 : 기상청 문답

1. 수익을 얻거나 이에 상응하는 혜택을 누리고자 하는 경우에도 사용이 가능한가요?
==> 네. 사용이 가능합니다.
2. Call 제한수가 있나요 ?
==> rss 방식은 콜수에 제한이 없으나, 
너무 많은 콜수인 경우 해킹(DDOS 공격 등)으로 간주 하여 차단 될 수 있습니다.
따라서 다른 서버에 데이터를 저장하고 2차로 배포하는 것이 좋은 방법이 될것 같습니다.

 

 

 

차근차근 진행하도록 해봅시다.

 

1. 아래 홈페이지에서 필요한 주소를 복사합니다.

   

필요한 것은 기상 예보 RSS서비스를 이용할 웹 주소입니다.

http://www.kma.go.kr/weather/lifenindustry/sevice_rss.jsp

 



 

2. URLConnection을 사용해서 데이터를 xml 형식으로 가져옵니다.

참고 : http://cofs.tistory.com/4

String urlStr = "RSS URL"
 
URL url = new URL(urlStr);
 
URLConnection connection = url.openConnection();
 
 
 
connection.setDoOutput(true);
 
// 타입 설정
connection.setRequestProperty("CONTENT-TYPE","text/xml"); 
 
 
//openStream() : URL페이지 정보를 읽어온다.
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream(),"utf-8"));
    
String inputLine;
String buffer = "";
    
 
// 페이지의 정보를 저장한다.
 while ((inputLine = in.readLine()) != null){
      buffer += inputLine.trim();
}
in.close();
 
cs

 

 

 

3. 가져온 데이터를 알맞은 형식으로 파싱하여 사용합니다.

 

파싱하는 것에 대해서 설명은 생략합니다.

java 또는 javascript 에서 입맛에 맞게 사용하시면 됩니다.

 

javascript 에서 xml 파싱 방법

참고 : http://cofs.tistory.com/11

 

4. 데이터 코드값 정보

tmx : 일최고기온
tmn : 일최저기온
sky : 하늘상태 (맑음(1), 구름조금(2), 구름많음(3), 흐림(4))
pty : 강수형태 (없음(0), 비(1), 비/눈(2), 눈(3))
pop : 강수확률 (%)
reh : 습도 (%)
r12 : 12시간 강수량
s12 : 12시간 신적설
r06 : 6시간 강수량
s06 : 6시간 신적설

 

등등..... 많습니다.

 

 

 

 

출처 :

기상청 : http://www.kma.go.kr/index.jsp

공동데이터포털 : https://www.data.go.kr/

 

 

2014.06 기준으로 작성

 

 

 

도움이 되셨다면 공감을 부탁드립니다. ^^ 

by 개발자 CofS 2016.01.05 17:49
| 1 2 3 |