공공데이터포털 단기예보, 중기예보 날씨 API에 대하여...

2024. 12. 3. 22:10Spring-Project

 

 

2024년 11월 28일 부로 단기예보, 중기예보에서 주는 API 의 범위가 달라졌다.

 

기존에는 단기예보는 1~3일의 데이터를 받았지만 이제는 18시 이후면 1 ~ 4일의 데이터를 받는다.

중기예보는 기존에는 3일 ~ 10일의 데이터를 받았지만 이제는 18시 이후면 5 ~ 10일의 데이터를 받는다.

 

 

 

기존 중기예보

 ~ 2024 / 11 / 28

 

3일부터 10일까지 데이터를 받았었다.

 

 

현재 중기예보

 

위 처럼 18시 전에는 4 ~ 10일의 데이터를 받았지만, 18시 이후에는 5 ~ 10일의 데이터만 받을 수 있다.

 

 

그럼 1 ~ 10일의 날씨를 알고 싶다 라고 하면 어떻게 해야 할까?

중기예보의 데이터는 하루에 2번 6시, 18시에 업데이트 되므로 하루 2번만 업데이트 하면 된다.

 

 06시 - 18시 

-> 단기예보에서 1 - 3 일간의 데이터를 가져오고, 중기예보에서는 4 - 10일간의 데이터를 가져오면 된다.

 

 

  		// 중기예보 
        
        LocalTime currentTime = LocalTime.now();	// 현재시간
        LocalTime sixAm = LocalTime.of(6, 0);		// 06시
        LocalTime sixPM = LocalTime.of(18, 0);		// 18시
    
		// 06시 이상  - 18 시 미만 이라면 중기예보에서 3일의 데이터를 불러옴 
        if(currentTime.isAfter(sixAm) && currentTime.isBefore(sixPM)) {
           // 4일의 데이터를 가져오는 코드
         }
         
         {	// 4 -10일간의 데이터를 가져오는 코드, 시간 상관 X
         
         }

 

 

18시 - 06시

-> 단기예보에서 1 - 4일간의 데이터를 가져오고, 중기예보에서는 5 - 10일간의 데이터를 가져오면 된다.

		// 단기예보
        
        LocalTime currentTime = LocalTime.now();	// 현재시간
        LocalTime sixAm = LocalTime.of(6, 0);		// 06시
        LocalTime sixPM = LocalTime.of(18, 0);		// 18시
    
		// 18시 이후  - 06시 미만 이라면 단기예보에서 4일의 데이터를 가져옴
        if(currentTime.isBefore(sixAm) && currentTime.isAfter(sixPM)) {
           // 4일의 데이터를 가져오는 코드
         }
         
         
         //중기예보
         {	// 5 -10일간의 데이터를 가져오는 코드, 시간 상관 X
         
         }

 

 

단기예보

https://github.com/YeongBee/myProject_1_01/blob/master/src/main/java/com/yeongbee/store/mydelight/weather/api/WeatherShtService.java

 

myProject_1_01/src/main/java/com/yeongbee/store/mydelight/weather/api/WeatherShtService.java at master · YeongBee/myProject_1_0

Contribute to YeongBee/myProject_1_01 development by creating an account on GitHub.

github.com

 

 

중기예보

https://github.com/YeongBee/myProject_1_01/blob/master/src/main/java/com/yeongbee/store/mydelight/weather/api/WeatherMidService.java

 

myProject_1_01/src/main/java/com/yeongbee/store/mydelight/weather/api/WeatherMidService.java at master · YeongBee/myProject_1_0

Contribute to YeongBee/myProject_1_01 development by creating an account on GitHub.

github.com