From e62635c057c3a3a73da23d786e701ddf581ffcbf Mon Sep 17 00:00:00 2001 From: Martin Eyben Date: Sat, 23 Nov 2024 18:41:40 +0100 Subject: [PATCH] feat: WeatherAPI tests --- src/main/java/eirb/pg203/WeatherAPI.java | 2 +- .../eirb/pg203/FakeJSONFetcherWeatherAPI.java | 43 + src/test/java/eirb/pg203/WeatherAPITest.java | 114 +- .../eirb/pg203/utils/FileResourcesUtils.java | 53 + .../java/eirb/pg203/utils/SplitQueryUrl.java | 20 + .../WeatherAPI/Bordeaux-1-partial.json | 3057 +++++++++++++ .../WeatherAPI/Bordeaux-2-partial-sunny.json | 3057 +++++++++++++ .../Bordeaux-3-partial-sunny-rain.json | 3057 +++++++++++++ .../Bordeaux-4-partial-sunny-rain-cloudy.json | 4059 +++++++++++++++++ .../resources/WeatherAPI/wrong-apikey.json | 6 + 10 files changed, 13425 insertions(+), 43 deletions(-) create mode 100644 src/test/java/eirb/pg203/FakeJSONFetcherWeatherAPI.java create mode 100644 src/test/java/eirb/pg203/utils/FileResourcesUtils.java create mode 100644 src/test/java/eirb/pg203/utils/SplitQueryUrl.java create mode 100644 src/test/resources/WeatherAPI/Bordeaux-1-partial.json create mode 100644 src/test/resources/WeatherAPI/Bordeaux-2-partial-sunny.json create mode 100644 src/test/resources/WeatherAPI/Bordeaux-3-partial-sunny-rain.json create mode 100644 src/test/resources/WeatherAPI/Bordeaux-4-partial-sunny-rain-cloudy.json create mode 100644 src/test/resources/WeatherAPI/wrong-apikey.json diff --git a/src/main/java/eirb/pg203/WeatherAPI.java b/src/main/java/eirb/pg203/WeatherAPI.java index 9abd91e..6e30274 100644 --- a/src/main/java/eirb/pg203/WeatherAPI.java +++ b/src/main/java/eirb/pg203/WeatherAPI.java @@ -19,7 +19,7 @@ import java.util.Locale; */ public class WeatherAPI implements WeatherDataAPI{ private final String weatherAPIKey; - private static final JSONFetcherInterface JSONFetcher = new JSONFetcher(); + JSONFetcherInterface JSONFetcher = new JSONFetcher(); private static final String forecastBaseURL = "https://api.weatherapi.com/v1/forecast.json"; WeatherAPI(String weatherAPIKey) { diff --git a/src/test/java/eirb/pg203/FakeJSONFetcherWeatherAPI.java b/src/test/java/eirb/pg203/FakeJSONFetcherWeatherAPI.java new file mode 100644 index 0000000..045381a --- /dev/null +++ b/src/test/java/eirb/pg203/FakeJSONFetcherWeatherAPI.java @@ -0,0 +1,43 @@ +package eirb.pg203; + +import eirb.pg203.utils.FileResourcesUtils; +import eirb.pg203.utils.JSONFetcherInterface; +import eirb.pg203.utils.SplitQueryUrl; +import org.json.JSONArray; +import org.json.JSONObject; + +import java.io.File; +import java.io.IOException; +import java.net.URL; +import java.util.ArrayList; +import java.util.Map; + +public class FakeJSONFetcherWeatherAPI implements JSONFetcherInterface { + private final static String baseUrlFormat = "https://api.weatherapi.com/v1/forecast.json?key=%s&q=%s&days=%d"; + private final String apiKey = "realKey"; + private static final JSONObject wrongKeyRequest = FileResourcesUtils.getFileFromResourceAsJson("WeatherAPI/wrong-apikey.json"); + private static ArrayList bordeauxRequests() { + ArrayList bordeauxRequest = new ArrayList<>(); + bordeauxRequest.add(FileResourcesUtils.getFileFromResourceAsJson("WeatherAPI/Bordeaux-1-partial.json")); + bordeauxRequest.add(FileResourcesUtils.getFileFromResourceAsJson("WeatherAPI/Bordeaux-2-partial-sunny.json")); + bordeauxRequest.add(FileResourcesUtils.getFileFromResourceAsJson("WeatherAPI/Bordeaux-3-partial-sunny-rain.json")); + bordeauxRequest.add(FileResourcesUtils.getFileFromResourceAsJson("WeatherAPI/Bordeaux-4-partial-sunny-rain-cloudy.json")); + return bordeauxRequest; + } + + @Override + public JSONObject fetch(URL url) throws IOException { + Map params = SplitQueryUrl.splitQuery(url); + int days = Integer.parseInt(params.get("days")); + + if (!params.get("key").contentEquals(apiKey)) + return wrongKeyRequest; + + return bordeauxRequests().get(days - 1); + } + + @Override + public JSONArray fetchArray(URL url) throws IOException { + return null; + } +} diff --git a/src/test/java/eirb/pg203/WeatherAPITest.java b/src/test/java/eirb/pg203/WeatherAPITest.java index af23ba3..c8b800c 100644 --- a/src/test/java/eirb/pg203/WeatherAPITest.java +++ b/src/test/java/eirb/pg203/WeatherAPITest.java @@ -2,70 +2,100 @@ package eirb.pg203; import org.json.JSONObject; import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.*; import java.io.IOException; +import java.util.ArrayList; +import java.util.stream.Stream; public class WeatherAPITest { - private static String APIKey = "cef8e1b6ea364994b5072423240111"; + private static final String APIKey = "realKey"; + private static final float epsilon = 0.01F; + private WeatherAPI weatherAPI; - @Test - public void testRightAPIKey() { - WeatherAPI weatherAPI = new WeatherAPI(WeatherAPITest.APIKey); - int day = 0; - // int hour = 10; - int days = 7; - String city = "Bordeaux"; + @BeforeEach + public void setupWeatherApi() { + this.weatherAPI = new WeatherAPI(WeatherAPITest.APIKey); + this.weatherAPI.JSONFetcher = new FakeJSONFetcherWeatherAPI(); + } - Assertions.assertAll( - () -> weatherAPI.getTemperature(day, city), - // () -> weatherAPI.getTemperature(day, hour, city), - () -> weatherAPI.getTemperatures(days, city) + /** + * List of args for Temperature testing + * @return Args for testing + */ + private static Stream testGetTemperature(){ + return Stream.of( + Arguments.arguments(0, 8.1F,WeatherData.Condition.PARTIAL, 17.45F, 142.08F), + Arguments.arguments(1, 13F, WeatherData.Condition.SUNNY, 23.03F, 142.58F), + Arguments.arguments(2, 12.7F, WeatherData.Condition.RAINY, 13.19F, 222.92F), + Arguments.arguments(3, 8.1F,WeatherData.Condition.CLOUDY, 17.45F, 142.08F) ); } - @Test - public void testWrongAPIKey() { - WeatherAPI weatherAPI = new WeatherAPI(""); - int day = 0; - // int hour = 10; - int days = 7; + @ParameterizedTest(name="Temperature fetch at Bordeaux D+{0}") + @MethodSource + public void testGetTemperature(int day, float expectedTemp, WeatherData.Condition expectedCond, float expectedWindSpeed, float expectedWindAngle) throws IOException { String city = "Bordeaux"; + WeatherData weatherData; + weatherData = weatherAPI.getTemperature(day, city); - Assertions.assertThrows(IOException.class, () -> weatherAPI.getTemperature(day, city)); - Assertions.assertThrows(IOException.class, () -> weatherAPI.getTemperatures(days, city)); + /* Temperatures */ + Assertions.assertEquals(expectedTemp, weatherData.getTemp()); + /* Condition */ + Assertions.assertEquals(expectedCond, weatherData.getCondition()); + /* Wind */ + Assertions.assertTrue(expectedWindSpeed - weatherData.getWindSpeed() < epsilon); + Assertions.assertTrue(expectedWindAngle - weatherData.getWindDirectionAngle() < epsilon); } + /** + * For coverage (hour not yet implemented) + * @throws IOException never + */ @Test - public void testWrongDay() { - WeatherAPI weatherAPI = new WeatherAPI(WeatherAPITest.APIKey); + public void testGetTemperatureByHour() throws IOException { String city = "Bordeaux"; - - Assertions.assertThrows(IOException.class, () -> weatherAPI.getTemperature(-1, city)); - Assertions.assertThrows(IOException.class, () -> weatherAPI.getTemperature(15, city)); - Assertions.assertThrows(IOException.class, () -> weatherAPI.getTemperatures(15, city)); - Assertions.assertThrows(IOException.class, () -> weatherAPI.getTemperatures(-1, city)); - } - - @Test - public void testRightDay() { - WeatherAPI weatherAPI = new WeatherAPI(WeatherAPITest.APIKey); - String city = "Bordeaux"; - Assertions.assertAll( - () -> weatherAPI.getTemperature(0, city), - () -> weatherAPI.getTemperature(5, city), - () -> weatherAPI.getTemperature(14, city), - () -> weatherAPI.getTemperatures(0, city), - () -> weatherAPI.getTemperatures(8, city), - () -> weatherAPI.getTemperatures(14, city) + () -> weatherAPI.getTemperature(0,1, city) ); + + } + + @Test + @DisplayName("Multiple day temperature fetch") + public void testGetTemperatures() throws IOException { + String city = "Bordeaux"; + int days = 3; + float[] expectedTemperatures = {8.1F, 13F, 12.7F, 8.1F}; + WeatherData.Condition[] expectedConditions = {WeatherData.Condition.PARTIAL, WeatherData.Condition.SUNNY, WeatherData.Condition.RAINY, WeatherData.Condition.CLOUDY}; + float[] expectedWindSpeed = {17.45F, 23.03F, 13.19F, 17.45F}; + float[] expectedWindDirection = {142.08F, 142.58F, 222.92F, 142.08F}; + + ArrayList weatherDatas; + WeatherData weatherData; + weatherDatas = weatherAPI.getTemperatures(days, city); + + for (int index = 0; index < days; index++) { + weatherData = weatherDatas.get(index); + + + /* Temperatures */ + Assertions.assertEquals(expectedTemperatures[index], weatherData.getTemp()); + /* Weather condition */ + Assertions.assertEquals(expectedConditions[index], weatherData.getCondition()); + /* Wind */ + Assertions.assertTrue(expectedWindSpeed[index] - weatherData.getWindSpeed() < epsilon); + Assertions.assertTrue(expectedWindDirection[index] - weatherData.getWindDirectionAngle() < epsilon); + } } @Test public void testGetAPIName() { - WeatherAPI weatherAPI = new WeatherAPI(WeatherAPITest.APIKey); - Assertions.assertTrue(weatherAPI.getAPIName().equals("WeatherAPI")); + Assertions.assertEquals("WeatherAPI", weatherAPI.getAPIName()); } } diff --git a/src/test/java/eirb/pg203/utils/FileResourcesUtils.java b/src/test/java/eirb/pg203/utils/FileResourcesUtils.java new file mode 100644 index 0000000..8398e38 --- /dev/null +++ b/src/test/java/eirb/pg203/utils/FileResourcesUtils.java @@ -0,0 +1,53 @@ +package eirb.pg203.utils; + +import org.json.JSONObject; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; + +public class FileResourcesUtils { + /** + * Fetch ressource file + * Code from https://mkyong.com + * @param fileName + * @return + */ + public static InputStream getFileFromResourceAsStream(String fileName) { + + // The class loader that loaded the class + ClassLoader classLoader = FileResourcesUtils.class.getClassLoader(); + InputStream inputStream = classLoader.getResourceAsStream(fileName); + + // the stream holding the file content + if (inputStream == null) { + throw new IllegalArgumentException("file not found! " + fileName); + } else { + return inputStream; + } + + } + + public static JSONObject getFileFromResourceAsJson(String fileName) { + InputStream inputStream = getFileFromResourceAsStream(fileName); + BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream)); + StringBuilder stringBuilder = new StringBuilder(); + String line; + while(true){ + try { + if (!bufferedReader.ready()) break; + } catch (IOException e) { + throw new RuntimeException(e); + } + try { + line = bufferedReader.readLine(); + } catch (IOException e) { + throw new RuntimeException(e); + } + stringBuilder.append(line); + } + + return new JSONObject(stringBuilder.toString()); + } +} diff --git a/src/test/java/eirb/pg203/utils/SplitQueryUrl.java b/src/test/java/eirb/pg203/utils/SplitQueryUrl.java new file mode 100644 index 0000000..00819c6 --- /dev/null +++ b/src/test/java/eirb/pg203/utils/SplitQueryUrl.java @@ -0,0 +1,20 @@ +package eirb.pg203.utils; + +import java.io.UnsupportedEncodingException; +import java.net.URL; +import java.net.URLDecoder; +import java.util.LinkedHashMap; +import java.util.Map; + +public class SplitQueryUrl { + public static Map splitQuery(URL url) throws UnsupportedEncodingException { + Map query_pairs = new LinkedHashMap(); + String query = url.getQuery(); + String[] pairs = query.split("&"); + for (String pair : pairs) { + int idx = pair.indexOf("="); + query_pairs.put(URLDecoder.decode(pair.substring(0, idx), "UTF-8"), URLDecoder.decode(pair.substring(idx + 1), "UTF-8")); + } + return query_pairs; + } +} diff --git a/src/test/resources/WeatherAPI/Bordeaux-1-partial.json b/src/test/resources/WeatherAPI/Bordeaux-1-partial.json new file mode 100644 index 0000000..6e10f39 --- /dev/null +++ b/src/test/resources/WeatherAPI/Bordeaux-1-partial.json @@ -0,0 +1,3057 @@ +{ + "location": { + "name": "Bordeaux", + "region": "Aquitaine", + "country": "France", + "lat": 44.8333, + "lon": -0.5667, + "tz_id": "Europe/Paris", + "localtime_epoch": 1732356248, + "localtime": "2024-11-23 11:04" + }, + "current": { + "last_updated_epoch": 1732356000, + "last_updated": "2024-11-23 11:00", + "temp_c": 7.4, + "temp_f": 45.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0, + "precip_in": 0, + "humidity": 76, + "cloud": 0, + "feelslike_c": 4.3, + "feelslike_f": 39.7, + "windchill_c": 6, + "windchill_f": 42.7, + "heatindex_c": 8.7, + "heatindex_f": 47.7, + "dewpoint_c": 1.3, + "dewpoint_f": 34.3, + "vis_km": 10, + "vis_miles": 6, + "uv": 0.9, + "gust_mph": 15.9, + "gust_kph": 25.5 + }, + "forecast": { + "forecastday": [ + { + "date": "2024-11-23", + "date_epoch": 1732320000, + "day": { + "maxtemp_c": 13.1, + "maxtemp_f": 55.7, + "mintemp_c": 4, + "mintemp_f": 39.3, + "avgtemp_c": 8.1, + "avgtemp_f": 46.6, + "maxwind_mph": 13, + "maxwind_kph": 20.9, + "totalprecip_mm": 0, + "totalprecip_in": 0, + "totalsnow_cm": 0, + "avgvis_km": 10, + "avgvis_miles": 6, + "avghumidity": 69, + "daily_will_it_rain": 0, + "daily_chance_of_rain": 0, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/116.png", + "code": 1003 + }, + "uv": 0.3 + }, + "astro": { + "sunrise": "08:10 AM", + "sunset": "05:27 PM", + "moonrise": "12:08 AM", + "moonset": "02:13 PM", + "moon_phase": "Last Quarter", + "moon_illumination": 51, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732316400, + "time": "2024-11-23 00:00", + "temp_c": 5.6, + "temp_f": 42, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1022, + "pressure_in": 30.19, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 81, + "cloud": 17, + "feelslike_c": 3.2, + "feelslike_f": 37.7, + "windchill_c": 3.2, + "windchill_f": 37.7, + "heatindex_c": 5.6, + "heatindex_f": 42, + "dewpoint_c": 2.6, + "dewpoint_f": 36.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 13.7, + "gust_kph": 22, + "uv": 0 + }, + { + "time_epoch": 1732320000, + "time": "2024-11-23 01:00", + "temp_c": 5.8, + "temp_f": 42.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 6.9, + "wind_kph": 11.2, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1022, + "pressure_in": 30.17, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 47, + "feelslike_c": 3.3, + "feelslike_f": 38, + "windchill_c": 3.3, + "windchill_f": 38, + "heatindex_c": 5.8, + "heatindex_f": 42.4, + "dewpoint_c": 2.5, + "dewpoint_f": 36.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 13.4, + "gust_kph": 21.6, + "uv": 0 + }, + { + "time_epoch": 1732323600, + "time": "2024-11-23 02:00", + "temp_c": 5.6, + "temp_f": 42.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 8.3, + "wind_kph": 13.3, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1021, + "pressure_in": 30.14, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 56, + "feelslike_c": 2.8, + "feelslike_f": 37, + "windchill_c": 2.8, + "windchill_f": 37, + "heatindex_c": 5.6, + "heatindex_f": 42.1, + "dewpoint_c": 2.3, + "dewpoint_f": 36.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.3, + "gust_kph": 24.7, + "uv": 0 + }, + { + "time_epoch": 1732327200, + "time": "2024-11-23 03:00", + "temp_c": 5.1, + "temp_f": 41.3, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 9.8, + "wind_kph": 15.8, + "wind_degree": 133, + "wind_dir": "SE", + "pressure_mb": 1020, + "pressure_in": 30.13, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 86, + "feelslike_c": 1.8, + "feelslike_f": 35.3, + "windchill_c": 1.8, + "windchill_f": 35.3, + "heatindex_c": 5.2, + "heatindex_f": 41.3, + "dewpoint_c": 1.9, + "dewpoint_f": 35.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.6, + "gust_kph": 28.4, + "uv": 0 + }, + { + "time_epoch": 1732330800, + "time": "2024-11-23 04:00", + "temp_c": 4.8, + "temp_f": 40.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 10.5, + "wind_kph": 16.9, + "wind_degree": 130, + "wind_dir": "SE", + "pressure_mb": 1020, + "pressure_in": 30.12, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 44, + "feelslike_c": 1.3, + "feelslike_f": 34.3, + "windchill_c": 1.3, + "windchill_f": 34.3, + "heatindex_c": 4.9, + "heatindex_f": 40.7, + "dewpoint_c": 1.5, + "dewpoint_f": 34.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 18.1, + "gust_kph": 29.1, + "uv": 0 + }, + { + "time_epoch": 1732334400, + "time": "2024-11-23 05:00", + "temp_c": 4.3, + "temp_f": 39.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11, + "wind_kph": 17.6, + "wind_degree": 130, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.1, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 46, + "feelslike_c": 0.5, + "feelslike_f": 32.8, + "windchill_c": 0.5, + "windchill_f": 32.8, + "heatindex_c": 4.3, + "heatindex_f": 39.7, + "dewpoint_c": 1.2, + "dewpoint_f": 34.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.1, + "gust_kph": 30.8, + "uv": 0 + }, + { + "time_epoch": 1732338000, + "time": "2024-11-23 06:00", + "temp_c": 4, + "temp_f": 39.3, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 39, + "feelslike_c": 0.1, + "feelslike_f": 32.2, + "windchill_c": 0.1, + "windchill_f": 32.2, + "heatindex_c": 4, + "heatindex_f": 39.3, + "dewpoint_c": 0.9, + "dewpoint_f": 33.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.8, + "gust_kph": 31.8, + "uv": 0 + }, + { + "time_epoch": 1732341600, + "time": "2024-11-23 07:00", + "temp_c": 4, + "temp_f": 39.3, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 26, + "feelslike_c": 0.1, + "feelslike_f": 32.2, + "windchill_c": 0.1, + "windchill_f": 32.2, + "heatindex_c": 4, + "heatindex_f": 39.3, + "dewpoint_c": 0.6, + "dewpoint_f": 33, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.9, + "gust_kph": 32, + "uv": 0 + }, + { + "time_epoch": 1732345200, + "time": "2024-11-23 08:00", + "temp_c": 4.1, + "temp_f": 39.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 10.5, + "wind_kph": 16.9, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 75, + "cloud": 7, + "feelslike_c": 0.4, + "feelslike_f": 32.6, + "windchill_c": 0.4, + "windchill_f": 32.6, + "heatindex_c": 4.1, + "heatindex_f": 39.4, + "dewpoint_c": 0.1, + "dewpoint_f": 32.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 18.8, + "gust_kph": 30.2, + "uv": 0 + }, + { + "time_epoch": 1732348800, + "time": "2024-11-23 09:00", + "temp_c": 4.6, + "temp_f": 40.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.7, + "wind_kph": 17.3, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 71, + "cloud": 13, + "feelslike_c": 1, + "feelslike_f": 33.7, + "windchill_c": 1, + "windchill_f": 33.7, + "heatindex_c": 4.6, + "heatindex_f": 40.4, + "dewpoint_c": -0.2, + "dewpoint_f": 31.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19, + "gust_kph": 30.5, + "uv": 0 + }, + { + "time_epoch": 1732352400, + "time": "2024-11-23 10:00", + "temp_c": 6.6, + "temp_f": 43.9, + "is_day": 1, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 146, + "wind_dir": "SSE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 63, + "cloud": 49, + "feelslike_c": 3.4, + "feelslike_f": 38, + "windchill_c": 3.4, + "windchill_f": 38, + "heatindex_c": 6.6, + "heatindex_f": 43.9, + "dewpoint_c": 0.2, + "dewpoint_f": 32.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.5, + "gust_kph": 28.2, + "uv": 0.4 + }, + { + "time_epoch": 1732356000, + "time": "2024-11-23 11:00", + "temp_c": 7.4, + "temp_f": 45.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 0, + "feelslike_c": 6, + "feelslike_f": 42.7, + "windchill_c": 6, + "windchill_f": 42.7, + "heatindex_c": 8.7, + "heatindex_f": 47.7, + "dewpoint_c": 1.3, + "dewpoint_f": 34.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.9, + "gust_kph": 25.5, + "uv": 0.9 + }, + { + "time_epoch": 1732359600, + "time": "2024-11-23 12:00", + "temp_c": 10.4, + "temp_f": 50.8, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11, + "wind_kph": 17.6, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.07, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 56, + "cloud": 21, + "feelslike_c": 8.2, + "feelslike_f": 46.7, + "windchill_c": 8.2, + "windchill_f": 46.7, + "heatindex_c": 10.5, + "heatindex_f": 50.8, + "dewpoint_c": 2.2, + "dewpoint_f": 35.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14.7, + "gust_kph": 23.6, + "uv": 1.3 + }, + { + "time_epoch": 1732363200, + "time": "2024-11-23 13:00", + "temp_c": 12.3, + "temp_f": 54.2, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.04, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 52, + "cloud": 22, + "feelslike_c": 10.5, + "feelslike_f": 50.8, + "windchill_c": 10.5, + "windchill_f": 50.8, + "heatindex_c": 12.3, + "heatindex_f": 54.2, + "dewpoint_c": 2.8, + "dewpoint_f": 37, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14.9, + "gust_kph": 23.9, + "uv": 1.6 + }, + { + "time_epoch": 1732366800, + "time": "2024-11-23 14:00", + "temp_c": 13, + "temp_f": 55.4, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.3, + "wind_kph": 16.6, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 12, + "feelslike_c": 11.5, + "feelslike_f": 52.7, + "windchill_c": 11.5, + "windchill_f": 52.7, + "heatindex_c": 13, + "heatindex_f": 55.4, + "dewpoint_c": 3.8, + "dewpoint_f": 38.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14, + "gust_kph": 22.6, + "uv": 1.4 + }, + { + "time_epoch": 1732370400, + "time": "2024-11-23 15:00", + "temp_c": 13.1, + "temp_f": 55.7, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1016, + "pressure_in": 30.01, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 22, + "feelslike_c": 11.5, + "feelslike_f": 52.7, + "windchill_c": 11.5, + "windchill_f": 52.7, + "heatindex_c": 13.2, + "heatindex_f": 55.7, + "dewpoint_c": 4.2, + "dewpoint_f": 39.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 16.8, + "gust_kph": 27.1, + "uv": 0.9 + }, + { + "time_epoch": 1732374000, + "time": "2024-11-23 16:00", + "temp_c": 12.5, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.7, + "wind_kph": 17.3, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 57, + "cloud": 14, + "feelslike_c": 10.7, + "feelslike_f": 51.3, + "windchill_c": 10.7, + "windchill_f": 51.3, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 4.1, + "dewpoint_f": 39.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.5, + "gust_kph": 28.1, + "uv": 0.4 + }, + { + "time_epoch": 1732377600, + "time": "2024-11-23 17:00", + "temp_c": 11.2, + "temp_f": 52.1, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 61, + "cloud": 22, + "feelslike_c": 9, + "feelslike_f": 48.2, + "windchill_c": 9, + "windchill_f": 48.2, + "heatindex_c": 11.2, + "heatindex_f": 52.1, + "dewpoint_c": 4, + "dewpoint_f": 39.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 20.2, + "gust_kph": 32.5, + "uv": 0 + }, + { + "time_epoch": 1732381200, + "time": "2024-11-23 18:00", + "temp_c": 10.2, + "temp_f": 50.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.6, + "wind_kph": 18.7, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 64, + "cloud": 47, + "feelslike_c": 7.8, + "feelslike_f": 46, + "windchill_c": 7.8, + "windchill_f": 46, + "heatindex_c": 10.2, + "heatindex_f": 50.4, + "dewpoint_c": 3.8, + "dewpoint_f": 38.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.2, + "gust_kph": 35.7, + "uv": 0 + }, + { + "time_epoch": 1732384800, + "time": "2024-11-23 19:00", + "temp_c": 10, + "temp_f": 50.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.3, + "wind_kph": 19.8, + "wind_degree": 144, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 66, + "cloud": 62, + "feelslike_c": 7.5, + "feelslike_f": 45.4, + "windchill_c": 7.5, + "windchill_f": 45.4, + "heatindex_c": 10, + "heatindex_f": 50.1, + "dewpoint_c": 4, + "dewpoint_f": 39.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.8, + "gust_kph": 36.8, + "uv": 0 + }, + { + "time_epoch": 1732388400, + "time": "2024-11-23 20:00", + "temp_c": 10, + "temp_f": 50, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 68, + "cloud": 57, + "feelslike_c": 7.3, + "feelslike_f": 45.2, + "windchill_c": 7.3, + "windchill_f": 45.2, + "heatindex_c": 10, + "heatindex_f": 50, + "dewpoint_c": 4.3, + "dewpoint_f": 39.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.6, + "gust_kph": 36.3, + "uv": 0 + }, + { + "time_epoch": 1732392000, + "time": "2024-11-23 21:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 142, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 71, + "cloud": 46, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 4.6, + "dewpoint_f": 40.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.3, + "gust_kph": 35.9, + "uv": 0 + }, + { + "time_epoch": 1732395600, + "time": "2024-11-23 22:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 73, + "cloud": 24, + "feelslike_c": 6.6, + "feelslike_f": 44, + "windchill_c": 6.6, + "windchill_f": 44, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 5, + "dewpoint_f": 41, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23, + "gust_kph": 37, + "uv": 0 + }, + { + "time_epoch": 1732399200, + "time": "2024-11-23 23:00", + "temp_c": 9.3, + "temp_f": 48.8, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.8, + "wind_kph": 20.5, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 21, + "feelslike_c": 6.5, + "feelslike_f": 43.7, + "windchill_c": 6.5, + "windchill_f": 43.7, + "heatindex_c": 9.3, + "heatindex_f": 48.8, + "dewpoint_c": 5.3, + "dewpoint_f": 41.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23, + "gust_kph": 37, + "uv": 0 + } + ] + }, + { + "date": "2024-11-24", + "date_epoch": 1732406400, + "day": { + "maxtemp_c": 17.2, + "maxtemp_f": 63, + "mintemp_c": 9.3, + "mintemp_f": 48.8, + "avgtemp_c": 13, + "avgtemp_f": 55.3, + "maxwind_mph": 16.3, + "maxwind_kph": 26.3, + "totalprecip_mm": 0, + "totalprecip_in": 0, + "totalsnow_cm": 0, + "avgvis_km": 10, + "avgvis_miles": 6, + "avghumidity": 70, + "daily_will_it_rain": 0, + "daily_chance_of_rain": 0, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "uv": 0.3 + }, + "astro": { + "sunrise": "08:12 AM", + "sunset": "05:26 PM", + "moonrise": "01:14 AM", + "moonset": "02:30 PM", + "moon_phase": "Waning Crescent", + "moon_illumination": 41, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732402800, + "time": "2024-11-24 00:00", + "temp_c": 9.3, + "temp_f": 48.8, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 41, + "feelslike_c": 6.5, + "feelslike_f": 43.8, + "windchill_c": 6.5, + "windchill_f": 43.8, + "heatindex_c": 9.3, + "heatindex_f": 48.8, + "dewpoint_c": 5.6, + "dewpoint_f": 42, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.1, + "gust_kph": 37.2, + "uv": 0 + }, + { + "time_epoch": 1732406400, + "time": "2024-11-24 01:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 33, + "feelslike_c": 6.7, + "feelslike_f": 44.1, + "windchill_c": 6.7, + "windchill_f": 44.1, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.4, + "gust_kph": 37.7, + "uv": 0 + }, + { + "time_epoch": 1732410000, + "time": "2024-11-24 02:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.3, + "wind_kph": 19.8, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 22, + "feelslike_c": 7, + "feelslike_f": 44.5, + "windchill_c": 7, + "windchill_f": 44.5, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 5.8, + "dewpoint_f": 42.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.2, + "gust_kph": 37.3, + "uv": 0 + }, + { + "time_epoch": 1732413600, + "time": "2024-11-24 03:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.8, + "wind_kph": 20.5, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 14, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.3, + "gust_kph": 39.2, + "uv": 0 + }, + { + "time_epoch": 1732417200, + "time": "2024-11-24 04:00", + "temp_c": 9.8, + "temp_f": 49.6, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 75, + "cloud": 10, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.8, + "heatindex_f": 49.6, + "dewpoint_c": 5.7, + "dewpoint_f": 42.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.6, + "gust_kph": 39.6, + "uv": 0 + }, + { + "time_epoch": 1732420800, + "time": "2024-11-24 05:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 136, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 10, + "feelslike_c": 6.8, + "feelslike_f": 44.3, + "windchill_c": 6.8, + "windchill_f": 44.3, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.3, + "gust_kph": 40.7, + "uv": 0 + }, + { + "time_epoch": 1732424400, + "time": "2024-11-24 06:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 11, + "feelslike_c": 6.8, + "feelslike_f": 44.3, + "windchill_c": 6.8, + "windchill_f": 44.3, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 5.8, + "dewpoint_f": 42.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.7, + "gust_kph": 41.4, + "uv": 0 + }, + { + "time_epoch": 1732428000, + "time": "2024-11-24 07:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.97, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 8, + "feelslike_c": 6.8, + "feelslike_f": 44.2, + "windchill_c": 6.8, + "windchill_f": 44.2, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 6, + "dewpoint_f": 42.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.5, + "gust_kph": 41, + "uv": 0 + }, + { + "time_epoch": 1732431600, + "time": "2024-11-24 08:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.2, + "wind_kph": 21.2, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 7, + "feelslike_c": 6.9, + "feelslike_f": 44.4, + "windchill_c": 6.9, + "windchill_f": 44.4, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 6.1, + "dewpoint_f": 43, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.8, + "gust_kph": 40, + "uv": 0 + }, + { + "time_epoch": 1732435200, + "time": "2024-11-24 09:00", + "temp_c": 10.1, + "temp_f": 50.1, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 7, + "feelslike_c": 7.3, + "feelslike_f": 45.1, + "windchill_c": 7.3, + "windchill_f": 45.1, + "heatindex_c": 10.1, + "heatindex_f": 50.1, + "dewpoint_c": 6.4, + "dewpoint_f": 43.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.5, + "gust_kph": 39.5, + "uv": 0 + }, + { + "time_epoch": 1732438800, + "time": "2024-11-24 10:00", + "temp_c": 11.4, + "temp_f": 52.5, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 14.5, + "wind_kph": 23.4, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.97, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 74, + "cloud": 5, + "feelslike_c": 8.9, + "feelslike_f": 47.9, + "windchill_c": 8.9, + "windchill_f": 47.9, + "heatindex_c": 11.4, + "heatindex_f": 52.5, + "dewpoint_c": 7, + "dewpoint_f": 44.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.2, + "gust_kph": 37.3, + "uv": 0.4 + }, + { + "time_epoch": 1732442400, + "time": "2024-11-24 11:00", + "temp_c": 13.2, + "temp_f": 55.7, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.96, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 70, + "cloud": 4, + "feelslike_c": 11, + "feelslike_f": 51.8, + "windchill_c": 11, + "windchill_f": 51.8, + "heatindex_c": 13.2, + "heatindex_f": 55.7, + "dewpoint_c": 7.8, + "dewpoint_f": 46, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.5, + "gust_kph": 36.3, + "uv": 0.8 + }, + { + "time_epoch": 1732446000, + "time": "2024-11-24 12:00", + "temp_c": 15, + "temp_f": 58.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.1, + "wind_kph": 25.9, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1014, + "pressure_in": 29.95, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 4, + "feelslike_c": 13.3, + "feelslike_f": 55.9, + "windchill_c": 13.3, + "windchill_f": 55.9, + "heatindex_c": 15, + "heatindex_f": 58.9, + "dewpoint_c": 8.4, + "dewpoint_f": 47.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.9, + "gust_kph": 35.2, + "uv": 1.3 + }, + { + "time_epoch": 1732449600, + "time": "2024-11-24 13:00", + "temp_c": 16.4, + "temp_f": 61.6, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.1, + "wind_kph": 25.9, + "wind_degree": 142, + "wind_dir": "SE", + "pressure_mb": 1013, + "pressure_in": 29.91, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 60, + "cloud": 5, + "feelslike_c": 16.4, + "feelslike_f": 61.6, + "windchill_c": 16.4, + "windchill_f": 61.6, + "heatindex_c": 16.4, + "heatindex_f": 61.6, + "dewpoint_c": 8.8, + "dewpoint_f": 47.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.6, + "gust_kph": 34.7, + "uv": 1.4 + }, + { + "time_epoch": 1732453200, + "time": "2024-11-24 14:00", + "temp_c": 17.2, + "temp_f": 62.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.3, + "wind_kph": 26.3, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1012, + "pressure_in": 29.89, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 4, + "feelslike_c": 17.2, + "feelslike_f": 62.9, + "windchill_c": 17.2, + "windchill_f": 62.9, + "heatindex_c": 17.2, + "heatindex_f": 62.9, + "dewpoint_c": 9, + "dewpoint_f": 48.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.9, + "gust_kph": 36.8, + "uv": 1.3 + }, + { + "time_epoch": 1732456800, + "time": "2024-11-24 15:00", + "temp_c": 17.2, + "temp_f": 63, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.3, + "wind_kph": 26.3, + "wind_degree": 145, + "wind_dir": "SE", + "pressure_mb": 1012, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 1, + "feelslike_c": 17.2, + "feelslike_f": 63, + "windchill_c": 17.2, + "windchill_f": 63, + "heatindex_c": 17.2, + "heatindex_f": 63, + "dewpoint_c": 9.2, + "dewpoint_f": 48.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25, + "gust_kph": 40.2, + "uv": 0.8 + }, + { + "time_epoch": 1732460400, + "time": "2024-11-24 16:00", + "temp_c": 16.6, + "temp_f": 61.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 147, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 61, + "cloud": 3, + "feelslike_c": 16.6, + "feelslike_f": 61.9, + "windchill_c": 16.6, + "windchill_f": 61.9, + "heatindex_c": 16.6, + "heatindex_f": 61.9, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.9, + "gust_kph": 41.7, + "uv": 0.4 + }, + { + "time_epoch": 1732464000, + "time": "2024-11-24 17:00", + "temp_c": 15.7, + "temp_f": 60.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.4, + "wind_kph": 24.8, + "wind_degree": 147, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 22, + "feelslike_c": 15.7, + "feelslike_f": 60.3, + "windchill_c": 15.7, + "windchill_f": 60.3, + "heatindex_c": 15.7, + "heatindex_f": 60.3, + "dewpoint_c": 9.1, + "dewpoint_f": 48.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 27, + "gust_kph": 43.5, + "uv": 0 + }, + { + "time_epoch": 1732467600, + "time": "2024-11-24 18:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 15.4, + "wind_kph": 24.8, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 66, + "cloud": 15, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 9.1, + "dewpoint_f": 48.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 27.8, + "gust_kph": 44.8, + "uv": 0 + }, + { + "time_epoch": 1732471200, + "time": "2024-11-24 19:00", + "temp_c": 15.2, + "temp_f": 59.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 47, + "feelslike_c": 15.2, + "feelslike_f": 59.4, + "windchill_c": 15.2, + "windchill_f": 59.4, + "heatindex_c": 15.2, + "heatindex_f": 59.4, + "dewpoint_c": 9.1, + "dewpoint_f": 48.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 28.4, + "gust_kph": 45.7, + "uv": 0 + }, + { + "time_epoch": 1732474800, + "time": "2024-11-24 20:00", + "temp_c": 15.2, + "temp_f": 59.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 14.8, + "wind_kph": 23.8, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1012, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 56, + "feelslike_c": 15.2, + "feelslike_f": 59.4, + "windchill_c": 15.2, + "windchill_f": 59.4, + "heatindex_c": 15.2, + "heatindex_f": 59.4, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.5, + "gust_kph": 42.6, + "uv": 0 + }, + { + "time_epoch": 1732478400, + "time": "2024-11-24 21:00", + "temp_c": 15.4, + "temp_f": 59.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 14.3, + "wind_kph": 23, + "wind_degree": 151, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 49, + "feelslike_c": 15.4, + "feelslike_f": 59.7, + "windchill_c": 15.4, + "windchill_f": 59.7, + "heatindex_c": 15.4, + "heatindex_f": 59.7, + "dewpoint_c": 9.3, + "dewpoint_f": 48.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.7, + "gust_kph": 39.8, + "uv": 0 + }, + { + "time_epoch": 1732482000, + "time": "2024-11-24 22:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 155, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 47, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.7, + "gust_kph": 36.5, + "uv": 0 + }, + { + "time_epoch": 1732485600, + "time": "2024-11-24 23:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 151, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 66, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.8, + "dewpoint_f": 47.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.8, + "gust_kph": 38.3, + "uv": 0 + } + ] + }, + { + "date": "2024-11-25", + "date_epoch": 1732492800, + "day": { + "maxtemp_c": 15.5, + "maxtemp_f": 59.8, + "mintemp_c": 9.5, + "mintemp_f": 49.1, + "avgtemp_c": 12.7, + "avgtemp_f": 54.8, + "maxwind_mph": 15, + "maxwind_kph": 24.1, + "totalprecip_mm": 7.56, + "totalprecip_in": 0.3, + "totalsnow_cm": 0, + "avgvis_km": 8.6, + "avgvis_miles": 5, + "avghumidity": 80, + "daily_will_it_rain": 1, + "daily_chance_of_rain": 89, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Moderate rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/302.png", + "code": 1189 + }, + "uv": 0 + }, + "astro": { + "sunrise": "08:13 AM", + "sunset": "05:26 PM", + "moonrise": "02:17 AM", + "moonset": "02:46 PM", + "moon_phase": "Waning Crescent", + "moon_illumination": 32, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732489200, + "time": "2024-11-25 00:00", + "temp_c": 15.5, + "temp_f": 59.8, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 153, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.85, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 63, + "cloud": 66, + "feelslike_c": 15.5, + "feelslike_f": 59.8, + "windchill_c": 15.5, + "windchill_f": 59.8, + "heatindex_c": 15.5, + "heatindex_f": 59.8, + "dewpoint_c": 8.5, + "dewpoint_f": 47.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.7, + "gust_kph": 39.7, + "uv": 0 + }, + { + "time_epoch": 1732492800, + "time": "2024-11-25 01:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 64, + "cloud": 56, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.5, + "dewpoint_f": 47.3, + "will_it_rain": 0, + "chance_of_rain": 69, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.1, + "gust_kph": 42.1, + "uv": 0 + }, + { + "time_epoch": 1732496400, + "time": "2024-11-25 02:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 14.5, + "wind_kph": 23.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1010, + "pressure_in": 29.82, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 62, + "cloud": 67, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.1, + "dewpoint_f": 46.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.6, + "gust_kph": 42.7, + "uv": 0 + }, + { + "time_epoch": 1732500000, + "time": "2024-11-25 03:00", + "temp_c": 15.5, + "temp_f": 60, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 154, + "wind_dir": "SSE", + "pressure_mb": 1010, + "pressure_in": 29.81, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 82, + "feelslike_c": 15.5, + "feelslike_f": 60, + "windchill_c": 15.5, + "windchill_f": 60, + "heatindex_c": 15.5, + "heatindex_f": 60, + "dewpoint_c": 7.5, + "dewpoint_f": 45.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.2, + "gust_kph": 42.1, + "uv": 0 + }, + { + "time_epoch": 1732503600, + "time": "2024-11-25 04:00", + "temp_c": 16.4, + "temp_f": 61.6, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 160, + "wind_dir": "SSE", + "pressure_mb": 1009, + "pressure_in": 29.79, + "precip_mm": 0.01, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 85, + "feelslike_c": 16.4, + "feelslike_f": 61.6, + "windchill_c": 16.4, + "windchill_f": 61.6, + "heatindex_c": 16.4, + "heatindex_f": 61.6, + "dewpoint_c": 7, + "dewpoint_f": 44.7, + "will_it_rain": 0, + "chance_of_rain": 70, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.5, + "gust_kph": 42.7, + "uv": 0 + }, + { + "time_epoch": 1732507200, + "time": "2024-11-25 05:00", + "temp_c": 15.5, + "temp_f": 59.9, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 154, + "wind_dir": "SSE", + "pressure_mb": 1009, + "pressure_in": 29.8, + "precip_mm": 0.01, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 86, + "feelslike_c": 15.5, + "feelslike_f": 59.9, + "windchill_c": 15.5, + "windchill_f": 59.9, + "heatindex_c": 15.5, + "heatindex_f": 59.9, + "dewpoint_c": 7.5, + "dewpoint_f": 45.5, + "will_it_rain": 0, + "chance_of_rain": 67, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.5, + "gust_kph": 34.5, + "uv": 0 + }, + { + "time_epoch": 1732510800, + "time": "2024-11-25 06:00", + "temp_c": 15.5, + "temp_f": 59.8, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 8.5, + "wind_kph": 13.7, + "wind_degree": 181, + "wind_dir": "S", + "pressure_mb": 1010, + "pressure_in": 29.83, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 60, + "cloud": 85, + "feelslike_c": 15.5, + "feelslike_f": 59.8, + "windchill_c": 15.5, + "windchill_f": 59.8, + "heatindex_c": 15.5, + "heatindex_f": 59.8, + "dewpoint_c": 7.8, + "dewpoint_f": 46.1, + "will_it_rain": 0, + "chance_of_rain": 64, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.4, + "gust_kph": 24.8, + "uv": 0 + }, + { + "time_epoch": 1732514400, + "time": "2024-11-25 07:00", + "temp_c": 15.1, + "temp_f": 59.1, + "is_day": 0, + "condition": { + "text": "Patchy light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/night/263.png", + "code": 1150 + }, + "wind_mph": 7.2, + "wind_kph": 11.5, + "wind_degree": 238, + "wind_dir": "WSW", + "pressure_mb": 1011, + "pressure_in": 29.84, + "precip_mm": 0.32, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 73, + "cloud": 71, + "feelslike_c": 15.1, + "feelslike_f": 59.1, + "windchill_c": 15.1, + "windchill_f": 59.1, + "heatindex_c": 15.1, + "heatindex_f": 59.1, + "dewpoint_c": 10.2, + "dewpoint_f": 50.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 5, + "vis_miles": 3, + "gust_mph": 12.5, + "gust_kph": 20.1, + "uv": 0 + }, + { + "time_epoch": 1732518000, + "time": "2024-11-25 08:00", + "temp_c": 13.6, + "temp_f": 56.5, + "is_day": 0, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/night/296.png", + "code": 1183 + }, + "wind_mph": 8.5, + "wind_kph": 13.7, + "wind_degree": 301, + "wind_dir": "WNW", + "pressure_mb": 1012, + "pressure_in": 29.88, + "precip_mm": 0.84, + "precip_in": 0.03, + "snow_cm": 0, + "humidity": 91, + "cloud": 100, + "feelslike_c": 12.5, + "feelslike_f": 54.5, + "windchill_c": 12.5, + "windchill_f": 54.5, + "heatindex_c": 13.6, + "heatindex_f": 56.5, + "dewpoint_c": 12.2, + "dewpoint_f": 53.9, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 12.6, + "gust_kph": 20.3, + "uv": 0 + }, + { + "time_epoch": 1732521600, + "time": "2024-11-25 09:00", + "temp_c": 12.4, + "temp_f": 54.3, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 316, + "wind_dir": "NW", + "pressure_mb": 1013, + "pressure_in": 29.92, + "precip_mm": 0.73, + "precip_in": 0.03, + "snow_cm": 0, + "humidity": 92, + "cloud": 100, + "feelslike_c": 11.4, + "feelslike_f": 52.5, + "windchill_c": 11.4, + "windchill_f": 52.5, + "heatindex_c": 12.4, + "heatindex_f": 54.3, + "dewpoint_c": 11.1, + "dewpoint_f": 52.1, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 9.8, + "gust_kph": 15.7, + "uv": 0 + }, + { + "time_epoch": 1732525200, + "time": "2024-11-25 10:00", + "temp_c": 12.4, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 290, + "wind_dir": "WNW", + "pressure_mb": 1014, + "pressure_in": 29.95, + "precip_mm": 0.89, + "precip_in": 0.04, + "snow_cm": 0, + "humidity": 92, + "cloud": 100, + "feelslike_c": 11.8, + "feelslike_f": 53.3, + "windchill_c": 11.8, + "windchill_f": 53.3, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 11.2, + "dewpoint_f": 52.1, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 7.5, + "gust_kph": 12.1, + "uv": 0 + }, + { + "time_epoch": 1732528800, + "time": "2024-11-25 11:00", + "temp_c": 12.5, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 6, + "wind_kph": 9.7, + "wind_degree": 311, + "wind_dir": "NW", + "pressure_mb": 1015, + "pressure_in": 29.96, + "precip_mm": 1.36, + "precip_in": 0.05, + "snow_cm": 0, + "humidity": 93, + "cloud": 100, + "feelslike_c": 11.6, + "feelslike_f": 52.9, + "windchill_c": 11.6, + "windchill_f": 52.9, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 11.3, + "dewpoint_f": 52.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 8.6, + "gust_kph": 13.8, + "uv": 0.1 + }, + { + "time_epoch": 1732532400, + "time": "2024-11-25 12:00", + "temp_c": 11.9, + "temp_f": 53.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 8.3, + "wind_kph": 13.3, + "wind_degree": 308, + "wind_dir": "NW", + "pressure_mb": 1016, + "pressure_in": 29.99, + "precip_mm": 2.14, + "precip_in": 0.08, + "snow_cm": 0, + "humidity": 93, + "cloud": 100, + "feelslike_c": 10.4, + "feelslike_f": 50.8, + "windchill_c": 10.4, + "windchill_f": 50.8, + "heatindex_c": 11.9, + "heatindex_f": 53.4, + "dewpoint_c": 10.8, + "dewpoint_f": 51.4, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 11.6, + "gust_kph": 18.6, + "uv": 0.1 + }, + { + "time_epoch": 1732536000, + "time": "2024-11-25 13:00", + "temp_c": 11.3, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Light rain shower", + "icon": "//cdn.weatherapi.com/weather/64x64/day/353.png", + "code": 1240 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 302, + "wind_dir": "WNW", + "pressure_mb": 1016, + "pressure_in": 30.01, + "precip_mm": 0.24, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 89, + "cloud": 100, + "feelslike_c": 10.1, + "feelslike_f": 50.2, + "windchill_c": 10.1, + "windchill_f": 50.2, + "heatindex_c": 11.3, + "heatindex_f": 52.4, + "dewpoint_c": 9.6, + "dewpoint_f": 49.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.5, + "gust_kph": 15.2, + "uv": 0.1 + }, + { + "time_epoch": 1732539600, + "time": "2024-11-25 14:00", + "temp_c": 11.3, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 283, + "wind_dir": "WNW", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0.37, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 89, + "cloud": 100, + "feelslike_c": 10.4, + "feelslike_f": 50.7, + "windchill_c": 10.4, + "windchill_f": 50.7, + "heatindex_c": 11.3, + "heatindex_f": 52.4, + "dewpoint_c": 9.5, + "dewpoint_f": 49.2, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 8, + "gust_kph": 12.9, + "uv": 0.1 + }, + { + "time_epoch": 1732543200, + "time": "2024-11-25 15:00", + "temp_c": 11.3, + "temp_f": 52.3, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 7.4, + "wind_kph": 11.9, + "wind_degree": 269, + "wind_dir": "W", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0.45, + "precip_in": 0.02, + "snow_cm": 0, + "humidity": 88, + "cloud": 100, + "feelslike_c": 9.9, + "feelslike_f": 49.7, + "windchill_c": 9.9, + "windchill_f": 49.7, + "heatindex_c": 11.3, + "heatindex_f": 52.3, + "dewpoint_c": 9.4, + "dewpoint_f": 49, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 11, + "gust_kph": 17.6, + "uv": 0.1 + }, + { + "time_epoch": 1732546800, + "time": "2024-11-25 16:00", + "temp_c": 11.4, + "temp_f": 52.5, + "is_day": 1, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/119.png", + "code": 1006 + }, + "wind_mph": 3.6, + "wind_kph": 5.8, + "wind_degree": 244, + "wind_dir": "WSW", + "pressure_mb": 1018, + "pressure_in": 30.07, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 82, + "cloud": 65, + "feelslike_c": 11.2, + "feelslike_f": 52.1, + "windchill_c": 11.2, + "windchill_f": 52.1, + "heatindex_c": 11.4, + "heatindex_f": 52.5, + "dewpoint_c": 8.4, + "dewpoint_f": 47.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 5.6, + "gust_kph": 9, + "uv": 0.1 + }, + { + "time_epoch": 1732550400, + "time": "2024-11-25 17:00", + "temp_c": 11.4, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/day/176.png", + "code": 1063 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 191, + "wind_dir": "SSW", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0.02, + "precip_in": 0, + "snow_cm": 0, + "humidity": 82, + "cloud": 58, + "feelslike_c": 10.5, + "feelslike_f": 51, + "windchill_c": 10.5, + "windchill_f": 51, + "heatindex_c": 11.4, + "heatindex_f": 52.4, + "dewpoint_c": 8.4, + "dewpoint_f": 47, + "will_it_rain": 1, + "chance_of_rain": 89, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 8.4, + "gust_kph": 13.5, + "uv": 0 + }, + { + "time_epoch": 1732554000, + "time": "2024-11-25 18:00", + "temp_c": 11.1, + "temp_f": 51.9, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 207, + "wind_dir": "SSW", + "pressure_mb": 1020, + "pressure_in": 30.11, + "precip_mm": 0.02, + "precip_in": 0, + "snow_cm": 0, + "humidity": 85, + "cloud": 89, + "feelslike_c": 10.1, + "feelslike_f": 50.1, + "windchill_c": 10.1, + "windchill_f": 50.1, + "heatindex_c": 11.1, + "heatindex_f": 51.9, + "dewpoint_c": 8.6, + "dewpoint_f": 47.4, + "will_it_rain": 1, + "chance_of_rain": 76, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.4, + "gust_kph": 15.2, + "uv": 0 + }, + { + "time_epoch": 1732557600, + "time": "2024-11-25 19:00", + "temp_c": 10.6, + "temp_f": 51.1, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 6, + "wind_kph": 9.7, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1020, + "pressure_in": 30.13, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 88, + "cloud": 88, + "feelslike_c": 9.4, + "feelslike_f": 48.9, + "windchill_c": 9.4, + "windchill_f": 48.9, + "heatindex_c": 10.6, + "heatindex_f": 51.1, + "dewpoint_c": 8.8, + "dewpoint_f": 47.8, + "will_it_rain": 1, + "chance_of_rain": 76, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.6, + "gust_kph": 17.1, + "uv": 0 + }, + { + "time_epoch": 1732561200, + "time": "2024-11-25 20:00", + "temp_c": 10.1, + "temp_f": 50.2, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1021, + "pressure_in": 30.16, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 92, + "cloud": 87, + "feelslike_c": 8.9, + "feelslike_f": 48.1, + "windchill_c": 8.9, + "windchill_f": 48.1, + "heatindex_c": 10.1, + "heatindex_f": 50.2, + "dewpoint_c": 8.8, + "dewpoint_f": 47.9, + "will_it_rain": 1, + "chance_of_rain": 75, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.5, + "gust_kph": 16.9, + "uv": 0 + }, + { + "time_epoch": 1732564800, + "time": "2024-11-25 21:00", + "temp_c": 9.8, + "temp_f": 49.6, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1022, + "pressure_in": 30.17, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 18, + "feelslike_c": 8.7, + "feelslike_f": 47.7, + "windchill_c": 8.7, + "windchill_f": 47.7, + "heatindex_c": 9.8, + "heatindex_f": 49.6, + "dewpoint_c": 8.7, + "dewpoint_f": 47.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.2, + "gust_kph": 16.3, + "uv": 0 + }, + { + "time_epoch": 1732568400, + "time": "2024-11-25 22:00", + "temp_c": 9.6, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1022, + "pressure_in": 30.19, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 24, + "feelslike_c": 8.5, + "feelslike_f": 47.4, + "windchill_c": 8.5, + "windchill_f": 47.4, + "heatindex_c": 9.6, + "heatindex_f": 49.4, + "dewpoint_c": 8.6, + "dewpoint_f": 47.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.2, + "gust_kph": 16.5, + "uv": 0 + }, + { + "time_epoch": 1732572000, + "time": "2024-11-25 23:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 4.9, + "wind_kph": 7.9, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1023, + "pressure_in": 30.2, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 26, + "feelslike_c": 8.4, + "feelslike_f": 47.2, + "windchill_c": 8.4, + "windchill_f": 47.2, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 8.5, + "dewpoint_f": 47.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.8, + "gust_kph": 15.8, + "uv": 0 + } + ] + } + ] + } +} \ No newline at end of file diff --git a/src/test/resources/WeatherAPI/Bordeaux-2-partial-sunny.json b/src/test/resources/WeatherAPI/Bordeaux-2-partial-sunny.json new file mode 100644 index 0000000..6e10f39 --- /dev/null +++ b/src/test/resources/WeatherAPI/Bordeaux-2-partial-sunny.json @@ -0,0 +1,3057 @@ +{ + "location": { + "name": "Bordeaux", + "region": "Aquitaine", + "country": "France", + "lat": 44.8333, + "lon": -0.5667, + "tz_id": "Europe/Paris", + "localtime_epoch": 1732356248, + "localtime": "2024-11-23 11:04" + }, + "current": { + "last_updated_epoch": 1732356000, + "last_updated": "2024-11-23 11:00", + "temp_c": 7.4, + "temp_f": 45.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0, + "precip_in": 0, + "humidity": 76, + "cloud": 0, + "feelslike_c": 4.3, + "feelslike_f": 39.7, + "windchill_c": 6, + "windchill_f": 42.7, + "heatindex_c": 8.7, + "heatindex_f": 47.7, + "dewpoint_c": 1.3, + "dewpoint_f": 34.3, + "vis_km": 10, + "vis_miles": 6, + "uv": 0.9, + "gust_mph": 15.9, + "gust_kph": 25.5 + }, + "forecast": { + "forecastday": [ + { + "date": "2024-11-23", + "date_epoch": 1732320000, + "day": { + "maxtemp_c": 13.1, + "maxtemp_f": 55.7, + "mintemp_c": 4, + "mintemp_f": 39.3, + "avgtemp_c": 8.1, + "avgtemp_f": 46.6, + "maxwind_mph": 13, + "maxwind_kph": 20.9, + "totalprecip_mm": 0, + "totalprecip_in": 0, + "totalsnow_cm": 0, + "avgvis_km": 10, + "avgvis_miles": 6, + "avghumidity": 69, + "daily_will_it_rain": 0, + "daily_chance_of_rain": 0, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/116.png", + "code": 1003 + }, + "uv": 0.3 + }, + "astro": { + "sunrise": "08:10 AM", + "sunset": "05:27 PM", + "moonrise": "12:08 AM", + "moonset": "02:13 PM", + "moon_phase": "Last Quarter", + "moon_illumination": 51, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732316400, + "time": "2024-11-23 00:00", + "temp_c": 5.6, + "temp_f": 42, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1022, + "pressure_in": 30.19, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 81, + "cloud": 17, + "feelslike_c": 3.2, + "feelslike_f": 37.7, + "windchill_c": 3.2, + "windchill_f": 37.7, + "heatindex_c": 5.6, + "heatindex_f": 42, + "dewpoint_c": 2.6, + "dewpoint_f": 36.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 13.7, + "gust_kph": 22, + "uv": 0 + }, + { + "time_epoch": 1732320000, + "time": "2024-11-23 01:00", + "temp_c": 5.8, + "temp_f": 42.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 6.9, + "wind_kph": 11.2, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1022, + "pressure_in": 30.17, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 47, + "feelslike_c": 3.3, + "feelslike_f": 38, + "windchill_c": 3.3, + "windchill_f": 38, + "heatindex_c": 5.8, + "heatindex_f": 42.4, + "dewpoint_c": 2.5, + "dewpoint_f": 36.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 13.4, + "gust_kph": 21.6, + "uv": 0 + }, + { + "time_epoch": 1732323600, + "time": "2024-11-23 02:00", + "temp_c": 5.6, + "temp_f": 42.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 8.3, + "wind_kph": 13.3, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1021, + "pressure_in": 30.14, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 56, + "feelslike_c": 2.8, + "feelslike_f": 37, + "windchill_c": 2.8, + "windchill_f": 37, + "heatindex_c": 5.6, + "heatindex_f": 42.1, + "dewpoint_c": 2.3, + "dewpoint_f": 36.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.3, + "gust_kph": 24.7, + "uv": 0 + }, + { + "time_epoch": 1732327200, + "time": "2024-11-23 03:00", + "temp_c": 5.1, + "temp_f": 41.3, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 9.8, + "wind_kph": 15.8, + "wind_degree": 133, + "wind_dir": "SE", + "pressure_mb": 1020, + "pressure_in": 30.13, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 86, + "feelslike_c": 1.8, + "feelslike_f": 35.3, + "windchill_c": 1.8, + "windchill_f": 35.3, + "heatindex_c": 5.2, + "heatindex_f": 41.3, + "dewpoint_c": 1.9, + "dewpoint_f": 35.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.6, + "gust_kph": 28.4, + "uv": 0 + }, + { + "time_epoch": 1732330800, + "time": "2024-11-23 04:00", + "temp_c": 4.8, + "temp_f": 40.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 10.5, + "wind_kph": 16.9, + "wind_degree": 130, + "wind_dir": "SE", + "pressure_mb": 1020, + "pressure_in": 30.12, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 44, + "feelslike_c": 1.3, + "feelslike_f": 34.3, + "windchill_c": 1.3, + "windchill_f": 34.3, + "heatindex_c": 4.9, + "heatindex_f": 40.7, + "dewpoint_c": 1.5, + "dewpoint_f": 34.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 18.1, + "gust_kph": 29.1, + "uv": 0 + }, + { + "time_epoch": 1732334400, + "time": "2024-11-23 05:00", + "temp_c": 4.3, + "temp_f": 39.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11, + "wind_kph": 17.6, + "wind_degree": 130, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.1, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 46, + "feelslike_c": 0.5, + "feelslike_f": 32.8, + "windchill_c": 0.5, + "windchill_f": 32.8, + "heatindex_c": 4.3, + "heatindex_f": 39.7, + "dewpoint_c": 1.2, + "dewpoint_f": 34.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.1, + "gust_kph": 30.8, + "uv": 0 + }, + { + "time_epoch": 1732338000, + "time": "2024-11-23 06:00", + "temp_c": 4, + "temp_f": 39.3, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 39, + "feelslike_c": 0.1, + "feelslike_f": 32.2, + "windchill_c": 0.1, + "windchill_f": 32.2, + "heatindex_c": 4, + "heatindex_f": 39.3, + "dewpoint_c": 0.9, + "dewpoint_f": 33.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.8, + "gust_kph": 31.8, + "uv": 0 + }, + { + "time_epoch": 1732341600, + "time": "2024-11-23 07:00", + "temp_c": 4, + "temp_f": 39.3, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 26, + "feelslike_c": 0.1, + "feelslike_f": 32.2, + "windchill_c": 0.1, + "windchill_f": 32.2, + "heatindex_c": 4, + "heatindex_f": 39.3, + "dewpoint_c": 0.6, + "dewpoint_f": 33, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.9, + "gust_kph": 32, + "uv": 0 + }, + { + "time_epoch": 1732345200, + "time": "2024-11-23 08:00", + "temp_c": 4.1, + "temp_f": 39.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 10.5, + "wind_kph": 16.9, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 75, + "cloud": 7, + "feelslike_c": 0.4, + "feelslike_f": 32.6, + "windchill_c": 0.4, + "windchill_f": 32.6, + "heatindex_c": 4.1, + "heatindex_f": 39.4, + "dewpoint_c": 0.1, + "dewpoint_f": 32.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 18.8, + "gust_kph": 30.2, + "uv": 0 + }, + { + "time_epoch": 1732348800, + "time": "2024-11-23 09:00", + "temp_c": 4.6, + "temp_f": 40.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.7, + "wind_kph": 17.3, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 71, + "cloud": 13, + "feelslike_c": 1, + "feelslike_f": 33.7, + "windchill_c": 1, + "windchill_f": 33.7, + "heatindex_c": 4.6, + "heatindex_f": 40.4, + "dewpoint_c": -0.2, + "dewpoint_f": 31.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19, + "gust_kph": 30.5, + "uv": 0 + }, + { + "time_epoch": 1732352400, + "time": "2024-11-23 10:00", + "temp_c": 6.6, + "temp_f": 43.9, + "is_day": 1, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 146, + "wind_dir": "SSE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 63, + "cloud": 49, + "feelslike_c": 3.4, + "feelslike_f": 38, + "windchill_c": 3.4, + "windchill_f": 38, + "heatindex_c": 6.6, + "heatindex_f": 43.9, + "dewpoint_c": 0.2, + "dewpoint_f": 32.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.5, + "gust_kph": 28.2, + "uv": 0.4 + }, + { + "time_epoch": 1732356000, + "time": "2024-11-23 11:00", + "temp_c": 7.4, + "temp_f": 45.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 0, + "feelslike_c": 6, + "feelslike_f": 42.7, + "windchill_c": 6, + "windchill_f": 42.7, + "heatindex_c": 8.7, + "heatindex_f": 47.7, + "dewpoint_c": 1.3, + "dewpoint_f": 34.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.9, + "gust_kph": 25.5, + "uv": 0.9 + }, + { + "time_epoch": 1732359600, + "time": "2024-11-23 12:00", + "temp_c": 10.4, + "temp_f": 50.8, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11, + "wind_kph": 17.6, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.07, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 56, + "cloud": 21, + "feelslike_c": 8.2, + "feelslike_f": 46.7, + "windchill_c": 8.2, + "windchill_f": 46.7, + "heatindex_c": 10.5, + "heatindex_f": 50.8, + "dewpoint_c": 2.2, + "dewpoint_f": 35.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14.7, + "gust_kph": 23.6, + "uv": 1.3 + }, + { + "time_epoch": 1732363200, + "time": "2024-11-23 13:00", + "temp_c": 12.3, + "temp_f": 54.2, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.04, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 52, + "cloud": 22, + "feelslike_c": 10.5, + "feelslike_f": 50.8, + "windchill_c": 10.5, + "windchill_f": 50.8, + "heatindex_c": 12.3, + "heatindex_f": 54.2, + "dewpoint_c": 2.8, + "dewpoint_f": 37, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14.9, + "gust_kph": 23.9, + "uv": 1.6 + }, + { + "time_epoch": 1732366800, + "time": "2024-11-23 14:00", + "temp_c": 13, + "temp_f": 55.4, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.3, + "wind_kph": 16.6, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 12, + "feelslike_c": 11.5, + "feelslike_f": 52.7, + "windchill_c": 11.5, + "windchill_f": 52.7, + "heatindex_c": 13, + "heatindex_f": 55.4, + "dewpoint_c": 3.8, + "dewpoint_f": 38.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14, + "gust_kph": 22.6, + "uv": 1.4 + }, + { + "time_epoch": 1732370400, + "time": "2024-11-23 15:00", + "temp_c": 13.1, + "temp_f": 55.7, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1016, + "pressure_in": 30.01, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 22, + "feelslike_c": 11.5, + "feelslike_f": 52.7, + "windchill_c": 11.5, + "windchill_f": 52.7, + "heatindex_c": 13.2, + "heatindex_f": 55.7, + "dewpoint_c": 4.2, + "dewpoint_f": 39.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 16.8, + "gust_kph": 27.1, + "uv": 0.9 + }, + { + "time_epoch": 1732374000, + "time": "2024-11-23 16:00", + "temp_c": 12.5, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.7, + "wind_kph": 17.3, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 57, + "cloud": 14, + "feelslike_c": 10.7, + "feelslike_f": 51.3, + "windchill_c": 10.7, + "windchill_f": 51.3, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 4.1, + "dewpoint_f": 39.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.5, + "gust_kph": 28.1, + "uv": 0.4 + }, + { + "time_epoch": 1732377600, + "time": "2024-11-23 17:00", + "temp_c": 11.2, + "temp_f": 52.1, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 61, + "cloud": 22, + "feelslike_c": 9, + "feelslike_f": 48.2, + "windchill_c": 9, + "windchill_f": 48.2, + "heatindex_c": 11.2, + "heatindex_f": 52.1, + "dewpoint_c": 4, + "dewpoint_f": 39.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 20.2, + "gust_kph": 32.5, + "uv": 0 + }, + { + "time_epoch": 1732381200, + "time": "2024-11-23 18:00", + "temp_c": 10.2, + "temp_f": 50.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.6, + "wind_kph": 18.7, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 64, + "cloud": 47, + "feelslike_c": 7.8, + "feelslike_f": 46, + "windchill_c": 7.8, + "windchill_f": 46, + "heatindex_c": 10.2, + "heatindex_f": 50.4, + "dewpoint_c": 3.8, + "dewpoint_f": 38.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.2, + "gust_kph": 35.7, + "uv": 0 + }, + { + "time_epoch": 1732384800, + "time": "2024-11-23 19:00", + "temp_c": 10, + "temp_f": 50.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.3, + "wind_kph": 19.8, + "wind_degree": 144, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 66, + "cloud": 62, + "feelslike_c": 7.5, + "feelslike_f": 45.4, + "windchill_c": 7.5, + "windchill_f": 45.4, + "heatindex_c": 10, + "heatindex_f": 50.1, + "dewpoint_c": 4, + "dewpoint_f": 39.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.8, + "gust_kph": 36.8, + "uv": 0 + }, + { + "time_epoch": 1732388400, + "time": "2024-11-23 20:00", + "temp_c": 10, + "temp_f": 50, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 68, + "cloud": 57, + "feelslike_c": 7.3, + "feelslike_f": 45.2, + "windchill_c": 7.3, + "windchill_f": 45.2, + "heatindex_c": 10, + "heatindex_f": 50, + "dewpoint_c": 4.3, + "dewpoint_f": 39.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.6, + "gust_kph": 36.3, + "uv": 0 + }, + { + "time_epoch": 1732392000, + "time": "2024-11-23 21:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 142, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 71, + "cloud": 46, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 4.6, + "dewpoint_f": 40.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.3, + "gust_kph": 35.9, + "uv": 0 + }, + { + "time_epoch": 1732395600, + "time": "2024-11-23 22:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 73, + "cloud": 24, + "feelslike_c": 6.6, + "feelslike_f": 44, + "windchill_c": 6.6, + "windchill_f": 44, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 5, + "dewpoint_f": 41, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23, + "gust_kph": 37, + "uv": 0 + }, + { + "time_epoch": 1732399200, + "time": "2024-11-23 23:00", + "temp_c": 9.3, + "temp_f": 48.8, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.8, + "wind_kph": 20.5, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 21, + "feelslike_c": 6.5, + "feelslike_f": 43.7, + "windchill_c": 6.5, + "windchill_f": 43.7, + "heatindex_c": 9.3, + "heatindex_f": 48.8, + "dewpoint_c": 5.3, + "dewpoint_f": 41.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23, + "gust_kph": 37, + "uv": 0 + } + ] + }, + { + "date": "2024-11-24", + "date_epoch": 1732406400, + "day": { + "maxtemp_c": 17.2, + "maxtemp_f": 63, + "mintemp_c": 9.3, + "mintemp_f": 48.8, + "avgtemp_c": 13, + "avgtemp_f": 55.3, + "maxwind_mph": 16.3, + "maxwind_kph": 26.3, + "totalprecip_mm": 0, + "totalprecip_in": 0, + "totalsnow_cm": 0, + "avgvis_km": 10, + "avgvis_miles": 6, + "avghumidity": 70, + "daily_will_it_rain": 0, + "daily_chance_of_rain": 0, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "uv": 0.3 + }, + "astro": { + "sunrise": "08:12 AM", + "sunset": "05:26 PM", + "moonrise": "01:14 AM", + "moonset": "02:30 PM", + "moon_phase": "Waning Crescent", + "moon_illumination": 41, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732402800, + "time": "2024-11-24 00:00", + "temp_c": 9.3, + "temp_f": 48.8, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 41, + "feelslike_c": 6.5, + "feelslike_f": 43.8, + "windchill_c": 6.5, + "windchill_f": 43.8, + "heatindex_c": 9.3, + "heatindex_f": 48.8, + "dewpoint_c": 5.6, + "dewpoint_f": 42, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.1, + "gust_kph": 37.2, + "uv": 0 + }, + { + "time_epoch": 1732406400, + "time": "2024-11-24 01:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 33, + "feelslike_c": 6.7, + "feelslike_f": 44.1, + "windchill_c": 6.7, + "windchill_f": 44.1, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.4, + "gust_kph": 37.7, + "uv": 0 + }, + { + "time_epoch": 1732410000, + "time": "2024-11-24 02:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.3, + "wind_kph": 19.8, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 22, + "feelslike_c": 7, + "feelslike_f": 44.5, + "windchill_c": 7, + "windchill_f": 44.5, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 5.8, + "dewpoint_f": 42.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.2, + "gust_kph": 37.3, + "uv": 0 + }, + { + "time_epoch": 1732413600, + "time": "2024-11-24 03:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.8, + "wind_kph": 20.5, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 14, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.3, + "gust_kph": 39.2, + "uv": 0 + }, + { + "time_epoch": 1732417200, + "time": "2024-11-24 04:00", + "temp_c": 9.8, + "temp_f": 49.6, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 75, + "cloud": 10, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.8, + "heatindex_f": 49.6, + "dewpoint_c": 5.7, + "dewpoint_f": 42.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.6, + "gust_kph": 39.6, + "uv": 0 + }, + { + "time_epoch": 1732420800, + "time": "2024-11-24 05:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 136, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 10, + "feelslike_c": 6.8, + "feelslike_f": 44.3, + "windchill_c": 6.8, + "windchill_f": 44.3, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.3, + "gust_kph": 40.7, + "uv": 0 + }, + { + "time_epoch": 1732424400, + "time": "2024-11-24 06:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 11, + "feelslike_c": 6.8, + "feelslike_f": 44.3, + "windchill_c": 6.8, + "windchill_f": 44.3, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 5.8, + "dewpoint_f": 42.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.7, + "gust_kph": 41.4, + "uv": 0 + }, + { + "time_epoch": 1732428000, + "time": "2024-11-24 07:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.97, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 8, + "feelslike_c": 6.8, + "feelslike_f": 44.2, + "windchill_c": 6.8, + "windchill_f": 44.2, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 6, + "dewpoint_f": 42.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.5, + "gust_kph": 41, + "uv": 0 + }, + { + "time_epoch": 1732431600, + "time": "2024-11-24 08:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.2, + "wind_kph": 21.2, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 7, + "feelslike_c": 6.9, + "feelslike_f": 44.4, + "windchill_c": 6.9, + "windchill_f": 44.4, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 6.1, + "dewpoint_f": 43, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.8, + "gust_kph": 40, + "uv": 0 + }, + { + "time_epoch": 1732435200, + "time": "2024-11-24 09:00", + "temp_c": 10.1, + "temp_f": 50.1, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 7, + "feelslike_c": 7.3, + "feelslike_f": 45.1, + "windchill_c": 7.3, + "windchill_f": 45.1, + "heatindex_c": 10.1, + "heatindex_f": 50.1, + "dewpoint_c": 6.4, + "dewpoint_f": 43.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.5, + "gust_kph": 39.5, + "uv": 0 + }, + { + "time_epoch": 1732438800, + "time": "2024-11-24 10:00", + "temp_c": 11.4, + "temp_f": 52.5, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 14.5, + "wind_kph": 23.4, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.97, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 74, + "cloud": 5, + "feelslike_c": 8.9, + "feelslike_f": 47.9, + "windchill_c": 8.9, + "windchill_f": 47.9, + "heatindex_c": 11.4, + "heatindex_f": 52.5, + "dewpoint_c": 7, + "dewpoint_f": 44.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.2, + "gust_kph": 37.3, + "uv": 0.4 + }, + { + "time_epoch": 1732442400, + "time": "2024-11-24 11:00", + "temp_c": 13.2, + "temp_f": 55.7, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.96, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 70, + "cloud": 4, + "feelslike_c": 11, + "feelslike_f": 51.8, + "windchill_c": 11, + "windchill_f": 51.8, + "heatindex_c": 13.2, + "heatindex_f": 55.7, + "dewpoint_c": 7.8, + "dewpoint_f": 46, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.5, + "gust_kph": 36.3, + "uv": 0.8 + }, + { + "time_epoch": 1732446000, + "time": "2024-11-24 12:00", + "temp_c": 15, + "temp_f": 58.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.1, + "wind_kph": 25.9, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1014, + "pressure_in": 29.95, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 4, + "feelslike_c": 13.3, + "feelslike_f": 55.9, + "windchill_c": 13.3, + "windchill_f": 55.9, + "heatindex_c": 15, + "heatindex_f": 58.9, + "dewpoint_c": 8.4, + "dewpoint_f": 47.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.9, + "gust_kph": 35.2, + "uv": 1.3 + }, + { + "time_epoch": 1732449600, + "time": "2024-11-24 13:00", + "temp_c": 16.4, + "temp_f": 61.6, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.1, + "wind_kph": 25.9, + "wind_degree": 142, + "wind_dir": "SE", + "pressure_mb": 1013, + "pressure_in": 29.91, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 60, + "cloud": 5, + "feelslike_c": 16.4, + "feelslike_f": 61.6, + "windchill_c": 16.4, + "windchill_f": 61.6, + "heatindex_c": 16.4, + "heatindex_f": 61.6, + "dewpoint_c": 8.8, + "dewpoint_f": 47.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.6, + "gust_kph": 34.7, + "uv": 1.4 + }, + { + "time_epoch": 1732453200, + "time": "2024-11-24 14:00", + "temp_c": 17.2, + "temp_f": 62.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.3, + "wind_kph": 26.3, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1012, + "pressure_in": 29.89, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 4, + "feelslike_c": 17.2, + "feelslike_f": 62.9, + "windchill_c": 17.2, + "windchill_f": 62.9, + "heatindex_c": 17.2, + "heatindex_f": 62.9, + "dewpoint_c": 9, + "dewpoint_f": 48.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.9, + "gust_kph": 36.8, + "uv": 1.3 + }, + { + "time_epoch": 1732456800, + "time": "2024-11-24 15:00", + "temp_c": 17.2, + "temp_f": 63, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.3, + "wind_kph": 26.3, + "wind_degree": 145, + "wind_dir": "SE", + "pressure_mb": 1012, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 1, + "feelslike_c": 17.2, + "feelslike_f": 63, + "windchill_c": 17.2, + "windchill_f": 63, + "heatindex_c": 17.2, + "heatindex_f": 63, + "dewpoint_c": 9.2, + "dewpoint_f": 48.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25, + "gust_kph": 40.2, + "uv": 0.8 + }, + { + "time_epoch": 1732460400, + "time": "2024-11-24 16:00", + "temp_c": 16.6, + "temp_f": 61.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 147, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 61, + "cloud": 3, + "feelslike_c": 16.6, + "feelslike_f": 61.9, + "windchill_c": 16.6, + "windchill_f": 61.9, + "heatindex_c": 16.6, + "heatindex_f": 61.9, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.9, + "gust_kph": 41.7, + "uv": 0.4 + }, + { + "time_epoch": 1732464000, + "time": "2024-11-24 17:00", + "temp_c": 15.7, + "temp_f": 60.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.4, + "wind_kph": 24.8, + "wind_degree": 147, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 22, + "feelslike_c": 15.7, + "feelslike_f": 60.3, + "windchill_c": 15.7, + "windchill_f": 60.3, + "heatindex_c": 15.7, + "heatindex_f": 60.3, + "dewpoint_c": 9.1, + "dewpoint_f": 48.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 27, + "gust_kph": 43.5, + "uv": 0 + }, + { + "time_epoch": 1732467600, + "time": "2024-11-24 18:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 15.4, + "wind_kph": 24.8, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 66, + "cloud": 15, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 9.1, + "dewpoint_f": 48.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 27.8, + "gust_kph": 44.8, + "uv": 0 + }, + { + "time_epoch": 1732471200, + "time": "2024-11-24 19:00", + "temp_c": 15.2, + "temp_f": 59.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 47, + "feelslike_c": 15.2, + "feelslike_f": 59.4, + "windchill_c": 15.2, + "windchill_f": 59.4, + "heatindex_c": 15.2, + "heatindex_f": 59.4, + "dewpoint_c": 9.1, + "dewpoint_f": 48.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 28.4, + "gust_kph": 45.7, + "uv": 0 + }, + { + "time_epoch": 1732474800, + "time": "2024-11-24 20:00", + "temp_c": 15.2, + "temp_f": 59.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 14.8, + "wind_kph": 23.8, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1012, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 56, + "feelslike_c": 15.2, + "feelslike_f": 59.4, + "windchill_c": 15.2, + "windchill_f": 59.4, + "heatindex_c": 15.2, + "heatindex_f": 59.4, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.5, + "gust_kph": 42.6, + "uv": 0 + }, + { + "time_epoch": 1732478400, + "time": "2024-11-24 21:00", + "temp_c": 15.4, + "temp_f": 59.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 14.3, + "wind_kph": 23, + "wind_degree": 151, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 49, + "feelslike_c": 15.4, + "feelslike_f": 59.7, + "windchill_c": 15.4, + "windchill_f": 59.7, + "heatindex_c": 15.4, + "heatindex_f": 59.7, + "dewpoint_c": 9.3, + "dewpoint_f": 48.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.7, + "gust_kph": 39.8, + "uv": 0 + }, + { + "time_epoch": 1732482000, + "time": "2024-11-24 22:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 155, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 47, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.7, + "gust_kph": 36.5, + "uv": 0 + }, + { + "time_epoch": 1732485600, + "time": "2024-11-24 23:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 151, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 66, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.8, + "dewpoint_f": 47.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.8, + "gust_kph": 38.3, + "uv": 0 + } + ] + }, + { + "date": "2024-11-25", + "date_epoch": 1732492800, + "day": { + "maxtemp_c": 15.5, + "maxtemp_f": 59.8, + "mintemp_c": 9.5, + "mintemp_f": 49.1, + "avgtemp_c": 12.7, + "avgtemp_f": 54.8, + "maxwind_mph": 15, + "maxwind_kph": 24.1, + "totalprecip_mm": 7.56, + "totalprecip_in": 0.3, + "totalsnow_cm": 0, + "avgvis_km": 8.6, + "avgvis_miles": 5, + "avghumidity": 80, + "daily_will_it_rain": 1, + "daily_chance_of_rain": 89, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Moderate rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/302.png", + "code": 1189 + }, + "uv": 0 + }, + "astro": { + "sunrise": "08:13 AM", + "sunset": "05:26 PM", + "moonrise": "02:17 AM", + "moonset": "02:46 PM", + "moon_phase": "Waning Crescent", + "moon_illumination": 32, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732489200, + "time": "2024-11-25 00:00", + "temp_c": 15.5, + "temp_f": 59.8, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 153, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.85, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 63, + "cloud": 66, + "feelslike_c": 15.5, + "feelslike_f": 59.8, + "windchill_c": 15.5, + "windchill_f": 59.8, + "heatindex_c": 15.5, + "heatindex_f": 59.8, + "dewpoint_c": 8.5, + "dewpoint_f": 47.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.7, + "gust_kph": 39.7, + "uv": 0 + }, + { + "time_epoch": 1732492800, + "time": "2024-11-25 01:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 64, + "cloud": 56, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.5, + "dewpoint_f": 47.3, + "will_it_rain": 0, + "chance_of_rain": 69, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.1, + "gust_kph": 42.1, + "uv": 0 + }, + { + "time_epoch": 1732496400, + "time": "2024-11-25 02:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 14.5, + "wind_kph": 23.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1010, + "pressure_in": 29.82, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 62, + "cloud": 67, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.1, + "dewpoint_f": 46.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.6, + "gust_kph": 42.7, + "uv": 0 + }, + { + "time_epoch": 1732500000, + "time": "2024-11-25 03:00", + "temp_c": 15.5, + "temp_f": 60, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 154, + "wind_dir": "SSE", + "pressure_mb": 1010, + "pressure_in": 29.81, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 82, + "feelslike_c": 15.5, + "feelslike_f": 60, + "windchill_c": 15.5, + "windchill_f": 60, + "heatindex_c": 15.5, + "heatindex_f": 60, + "dewpoint_c": 7.5, + "dewpoint_f": 45.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.2, + "gust_kph": 42.1, + "uv": 0 + }, + { + "time_epoch": 1732503600, + "time": "2024-11-25 04:00", + "temp_c": 16.4, + "temp_f": 61.6, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 160, + "wind_dir": "SSE", + "pressure_mb": 1009, + "pressure_in": 29.79, + "precip_mm": 0.01, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 85, + "feelslike_c": 16.4, + "feelslike_f": 61.6, + "windchill_c": 16.4, + "windchill_f": 61.6, + "heatindex_c": 16.4, + "heatindex_f": 61.6, + "dewpoint_c": 7, + "dewpoint_f": 44.7, + "will_it_rain": 0, + "chance_of_rain": 70, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.5, + "gust_kph": 42.7, + "uv": 0 + }, + { + "time_epoch": 1732507200, + "time": "2024-11-25 05:00", + "temp_c": 15.5, + "temp_f": 59.9, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 154, + "wind_dir": "SSE", + "pressure_mb": 1009, + "pressure_in": 29.8, + "precip_mm": 0.01, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 86, + "feelslike_c": 15.5, + "feelslike_f": 59.9, + "windchill_c": 15.5, + "windchill_f": 59.9, + "heatindex_c": 15.5, + "heatindex_f": 59.9, + "dewpoint_c": 7.5, + "dewpoint_f": 45.5, + "will_it_rain": 0, + "chance_of_rain": 67, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.5, + "gust_kph": 34.5, + "uv": 0 + }, + { + "time_epoch": 1732510800, + "time": "2024-11-25 06:00", + "temp_c": 15.5, + "temp_f": 59.8, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 8.5, + "wind_kph": 13.7, + "wind_degree": 181, + "wind_dir": "S", + "pressure_mb": 1010, + "pressure_in": 29.83, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 60, + "cloud": 85, + "feelslike_c": 15.5, + "feelslike_f": 59.8, + "windchill_c": 15.5, + "windchill_f": 59.8, + "heatindex_c": 15.5, + "heatindex_f": 59.8, + "dewpoint_c": 7.8, + "dewpoint_f": 46.1, + "will_it_rain": 0, + "chance_of_rain": 64, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.4, + "gust_kph": 24.8, + "uv": 0 + }, + { + "time_epoch": 1732514400, + "time": "2024-11-25 07:00", + "temp_c": 15.1, + "temp_f": 59.1, + "is_day": 0, + "condition": { + "text": "Patchy light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/night/263.png", + "code": 1150 + }, + "wind_mph": 7.2, + "wind_kph": 11.5, + "wind_degree": 238, + "wind_dir": "WSW", + "pressure_mb": 1011, + "pressure_in": 29.84, + "precip_mm": 0.32, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 73, + "cloud": 71, + "feelslike_c": 15.1, + "feelslike_f": 59.1, + "windchill_c": 15.1, + "windchill_f": 59.1, + "heatindex_c": 15.1, + "heatindex_f": 59.1, + "dewpoint_c": 10.2, + "dewpoint_f": 50.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 5, + "vis_miles": 3, + "gust_mph": 12.5, + "gust_kph": 20.1, + "uv": 0 + }, + { + "time_epoch": 1732518000, + "time": "2024-11-25 08:00", + "temp_c": 13.6, + "temp_f": 56.5, + "is_day": 0, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/night/296.png", + "code": 1183 + }, + "wind_mph": 8.5, + "wind_kph": 13.7, + "wind_degree": 301, + "wind_dir": "WNW", + "pressure_mb": 1012, + "pressure_in": 29.88, + "precip_mm": 0.84, + "precip_in": 0.03, + "snow_cm": 0, + "humidity": 91, + "cloud": 100, + "feelslike_c": 12.5, + "feelslike_f": 54.5, + "windchill_c": 12.5, + "windchill_f": 54.5, + "heatindex_c": 13.6, + "heatindex_f": 56.5, + "dewpoint_c": 12.2, + "dewpoint_f": 53.9, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 12.6, + "gust_kph": 20.3, + "uv": 0 + }, + { + "time_epoch": 1732521600, + "time": "2024-11-25 09:00", + "temp_c": 12.4, + "temp_f": 54.3, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 316, + "wind_dir": "NW", + "pressure_mb": 1013, + "pressure_in": 29.92, + "precip_mm": 0.73, + "precip_in": 0.03, + "snow_cm": 0, + "humidity": 92, + "cloud": 100, + "feelslike_c": 11.4, + "feelslike_f": 52.5, + "windchill_c": 11.4, + "windchill_f": 52.5, + "heatindex_c": 12.4, + "heatindex_f": 54.3, + "dewpoint_c": 11.1, + "dewpoint_f": 52.1, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 9.8, + "gust_kph": 15.7, + "uv": 0 + }, + { + "time_epoch": 1732525200, + "time": "2024-11-25 10:00", + "temp_c": 12.4, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 290, + "wind_dir": "WNW", + "pressure_mb": 1014, + "pressure_in": 29.95, + "precip_mm": 0.89, + "precip_in": 0.04, + "snow_cm": 0, + "humidity": 92, + "cloud": 100, + "feelslike_c": 11.8, + "feelslike_f": 53.3, + "windchill_c": 11.8, + "windchill_f": 53.3, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 11.2, + "dewpoint_f": 52.1, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 7.5, + "gust_kph": 12.1, + "uv": 0 + }, + { + "time_epoch": 1732528800, + "time": "2024-11-25 11:00", + "temp_c": 12.5, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 6, + "wind_kph": 9.7, + "wind_degree": 311, + "wind_dir": "NW", + "pressure_mb": 1015, + "pressure_in": 29.96, + "precip_mm": 1.36, + "precip_in": 0.05, + "snow_cm": 0, + "humidity": 93, + "cloud": 100, + "feelslike_c": 11.6, + "feelslike_f": 52.9, + "windchill_c": 11.6, + "windchill_f": 52.9, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 11.3, + "dewpoint_f": 52.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 8.6, + "gust_kph": 13.8, + "uv": 0.1 + }, + { + "time_epoch": 1732532400, + "time": "2024-11-25 12:00", + "temp_c": 11.9, + "temp_f": 53.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 8.3, + "wind_kph": 13.3, + "wind_degree": 308, + "wind_dir": "NW", + "pressure_mb": 1016, + "pressure_in": 29.99, + "precip_mm": 2.14, + "precip_in": 0.08, + "snow_cm": 0, + "humidity": 93, + "cloud": 100, + "feelslike_c": 10.4, + "feelslike_f": 50.8, + "windchill_c": 10.4, + "windchill_f": 50.8, + "heatindex_c": 11.9, + "heatindex_f": 53.4, + "dewpoint_c": 10.8, + "dewpoint_f": 51.4, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 11.6, + "gust_kph": 18.6, + "uv": 0.1 + }, + { + "time_epoch": 1732536000, + "time": "2024-11-25 13:00", + "temp_c": 11.3, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Light rain shower", + "icon": "//cdn.weatherapi.com/weather/64x64/day/353.png", + "code": 1240 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 302, + "wind_dir": "WNW", + "pressure_mb": 1016, + "pressure_in": 30.01, + "precip_mm": 0.24, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 89, + "cloud": 100, + "feelslike_c": 10.1, + "feelslike_f": 50.2, + "windchill_c": 10.1, + "windchill_f": 50.2, + "heatindex_c": 11.3, + "heatindex_f": 52.4, + "dewpoint_c": 9.6, + "dewpoint_f": 49.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.5, + "gust_kph": 15.2, + "uv": 0.1 + }, + { + "time_epoch": 1732539600, + "time": "2024-11-25 14:00", + "temp_c": 11.3, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 283, + "wind_dir": "WNW", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0.37, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 89, + "cloud": 100, + "feelslike_c": 10.4, + "feelslike_f": 50.7, + "windchill_c": 10.4, + "windchill_f": 50.7, + "heatindex_c": 11.3, + "heatindex_f": 52.4, + "dewpoint_c": 9.5, + "dewpoint_f": 49.2, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 8, + "gust_kph": 12.9, + "uv": 0.1 + }, + { + "time_epoch": 1732543200, + "time": "2024-11-25 15:00", + "temp_c": 11.3, + "temp_f": 52.3, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 7.4, + "wind_kph": 11.9, + "wind_degree": 269, + "wind_dir": "W", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0.45, + "precip_in": 0.02, + "snow_cm": 0, + "humidity": 88, + "cloud": 100, + "feelslike_c": 9.9, + "feelslike_f": 49.7, + "windchill_c": 9.9, + "windchill_f": 49.7, + "heatindex_c": 11.3, + "heatindex_f": 52.3, + "dewpoint_c": 9.4, + "dewpoint_f": 49, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 11, + "gust_kph": 17.6, + "uv": 0.1 + }, + { + "time_epoch": 1732546800, + "time": "2024-11-25 16:00", + "temp_c": 11.4, + "temp_f": 52.5, + "is_day": 1, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/119.png", + "code": 1006 + }, + "wind_mph": 3.6, + "wind_kph": 5.8, + "wind_degree": 244, + "wind_dir": "WSW", + "pressure_mb": 1018, + "pressure_in": 30.07, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 82, + "cloud": 65, + "feelslike_c": 11.2, + "feelslike_f": 52.1, + "windchill_c": 11.2, + "windchill_f": 52.1, + "heatindex_c": 11.4, + "heatindex_f": 52.5, + "dewpoint_c": 8.4, + "dewpoint_f": 47.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 5.6, + "gust_kph": 9, + "uv": 0.1 + }, + { + "time_epoch": 1732550400, + "time": "2024-11-25 17:00", + "temp_c": 11.4, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/day/176.png", + "code": 1063 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 191, + "wind_dir": "SSW", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0.02, + "precip_in": 0, + "snow_cm": 0, + "humidity": 82, + "cloud": 58, + "feelslike_c": 10.5, + "feelslike_f": 51, + "windchill_c": 10.5, + "windchill_f": 51, + "heatindex_c": 11.4, + "heatindex_f": 52.4, + "dewpoint_c": 8.4, + "dewpoint_f": 47, + "will_it_rain": 1, + "chance_of_rain": 89, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 8.4, + "gust_kph": 13.5, + "uv": 0 + }, + { + "time_epoch": 1732554000, + "time": "2024-11-25 18:00", + "temp_c": 11.1, + "temp_f": 51.9, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 207, + "wind_dir": "SSW", + "pressure_mb": 1020, + "pressure_in": 30.11, + "precip_mm": 0.02, + "precip_in": 0, + "snow_cm": 0, + "humidity": 85, + "cloud": 89, + "feelslike_c": 10.1, + "feelslike_f": 50.1, + "windchill_c": 10.1, + "windchill_f": 50.1, + "heatindex_c": 11.1, + "heatindex_f": 51.9, + "dewpoint_c": 8.6, + "dewpoint_f": 47.4, + "will_it_rain": 1, + "chance_of_rain": 76, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.4, + "gust_kph": 15.2, + "uv": 0 + }, + { + "time_epoch": 1732557600, + "time": "2024-11-25 19:00", + "temp_c": 10.6, + "temp_f": 51.1, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 6, + "wind_kph": 9.7, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1020, + "pressure_in": 30.13, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 88, + "cloud": 88, + "feelslike_c": 9.4, + "feelslike_f": 48.9, + "windchill_c": 9.4, + "windchill_f": 48.9, + "heatindex_c": 10.6, + "heatindex_f": 51.1, + "dewpoint_c": 8.8, + "dewpoint_f": 47.8, + "will_it_rain": 1, + "chance_of_rain": 76, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.6, + "gust_kph": 17.1, + "uv": 0 + }, + { + "time_epoch": 1732561200, + "time": "2024-11-25 20:00", + "temp_c": 10.1, + "temp_f": 50.2, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1021, + "pressure_in": 30.16, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 92, + "cloud": 87, + "feelslike_c": 8.9, + "feelslike_f": 48.1, + "windchill_c": 8.9, + "windchill_f": 48.1, + "heatindex_c": 10.1, + "heatindex_f": 50.2, + "dewpoint_c": 8.8, + "dewpoint_f": 47.9, + "will_it_rain": 1, + "chance_of_rain": 75, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.5, + "gust_kph": 16.9, + "uv": 0 + }, + { + "time_epoch": 1732564800, + "time": "2024-11-25 21:00", + "temp_c": 9.8, + "temp_f": 49.6, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1022, + "pressure_in": 30.17, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 18, + "feelslike_c": 8.7, + "feelslike_f": 47.7, + "windchill_c": 8.7, + "windchill_f": 47.7, + "heatindex_c": 9.8, + "heatindex_f": 49.6, + "dewpoint_c": 8.7, + "dewpoint_f": 47.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.2, + "gust_kph": 16.3, + "uv": 0 + }, + { + "time_epoch": 1732568400, + "time": "2024-11-25 22:00", + "temp_c": 9.6, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1022, + "pressure_in": 30.19, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 24, + "feelslike_c": 8.5, + "feelslike_f": 47.4, + "windchill_c": 8.5, + "windchill_f": 47.4, + "heatindex_c": 9.6, + "heatindex_f": 49.4, + "dewpoint_c": 8.6, + "dewpoint_f": 47.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.2, + "gust_kph": 16.5, + "uv": 0 + }, + { + "time_epoch": 1732572000, + "time": "2024-11-25 23:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 4.9, + "wind_kph": 7.9, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1023, + "pressure_in": 30.2, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 26, + "feelslike_c": 8.4, + "feelslike_f": 47.2, + "windchill_c": 8.4, + "windchill_f": 47.2, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 8.5, + "dewpoint_f": 47.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.8, + "gust_kph": 15.8, + "uv": 0 + } + ] + } + ] + } +} \ No newline at end of file diff --git a/src/test/resources/WeatherAPI/Bordeaux-3-partial-sunny-rain.json b/src/test/resources/WeatherAPI/Bordeaux-3-partial-sunny-rain.json new file mode 100644 index 0000000..6e10f39 --- /dev/null +++ b/src/test/resources/WeatherAPI/Bordeaux-3-partial-sunny-rain.json @@ -0,0 +1,3057 @@ +{ + "location": { + "name": "Bordeaux", + "region": "Aquitaine", + "country": "France", + "lat": 44.8333, + "lon": -0.5667, + "tz_id": "Europe/Paris", + "localtime_epoch": 1732356248, + "localtime": "2024-11-23 11:04" + }, + "current": { + "last_updated_epoch": 1732356000, + "last_updated": "2024-11-23 11:00", + "temp_c": 7.4, + "temp_f": 45.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0, + "precip_in": 0, + "humidity": 76, + "cloud": 0, + "feelslike_c": 4.3, + "feelslike_f": 39.7, + "windchill_c": 6, + "windchill_f": 42.7, + "heatindex_c": 8.7, + "heatindex_f": 47.7, + "dewpoint_c": 1.3, + "dewpoint_f": 34.3, + "vis_km": 10, + "vis_miles": 6, + "uv": 0.9, + "gust_mph": 15.9, + "gust_kph": 25.5 + }, + "forecast": { + "forecastday": [ + { + "date": "2024-11-23", + "date_epoch": 1732320000, + "day": { + "maxtemp_c": 13.1, + "maxtemp_f": 55.7, + "mintemp_c": 4, + "mintemp_f": 39.3, + "avgtemp_c": 8.1, + "avgtemp_f": 46.6, + "maxwind_mph": 13, + "maxwind_kph": 20.9, + "totalprecip_mm": 0, + "totalprecip_in": 0, + "totalsnow_cm": 0, + "avgvis_km": 10, + "avgvis_miles": 6, + "avghumidity": 69, + "daily_will_it_rain": 0, + "daily_chance_of_rain": 0, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/116.png", + "code": 1003 + }, + "uv": 0.3 + }, + "astro": { + "sunrise": "08:10 AM", + "sunset": "05:27 PM", + "moonrise": "12:08 AM", + "moonset": "02:13 PM", + "moon_phase": "Last Quarter", + "moon_illumination": 51, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732316400, + "time": "2024-11-23 00:00", + "temp_c": 5.6, + "temp_f": 42, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1022, + "pressure_in": 30.19, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 81, + "cloud": 17, + "feelslike_c": 3.2, + "feelslike_f": 37.7, + "windchill_c": 3.2, + "windchill_f": 37.7, + "heatindex_c": 5.6, + "heatindex_f": 42, + "dewpoint_c": 2.6, + "dewpoint_f": 36.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 13.7, + "gust_kph": 22, + "uv": 0 + }, + { + "time_epoch": 1732320000, + "time": "2024-11-23 01:00", + "temp_c": 5.8, + "temp_f": 42.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 6.9, + "wind_kph": 11.2, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1022, + "pressure_in": 30.17, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 47, + "feelslike_c": 3.3, + "feelslike_f": 38, + "windchill_c": 3.3, + "windchill_f": 38, + "heatindex_c": 5.8, + "heatindex_f": 42.4, + "dewpoint_c": 2.5, + "dewpoint_f": 36.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 13.4, + "gust_kph": 21.6, + "uv": 0 + }, + { + "time_epoch": 1732323600, + "time": "2024-11-23 02:00", + "temp_c": 5.6, + "temp_f": 42.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 8.3, + "wind_kph": 13.3, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1021, + "pressure_in": 30.14, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 56, + "feelslike_c": 2.8, + "feelslike_f": 37, + "windchill_c": 2.8, + "windchill_f": 37, + "heatindex_c": 5.6, + "heatindex_f": 42.1, + "dewpoint_c": 2.3, + "dewpoint_f": 36.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.3, + "gust_kph": 24.7, + "uv": 0 + }, + { + "time_epoch": 1732327200, + "time": "2024-11-23 03:00", + "temp_c": 5.1, + "temp_f": 41.3, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 9.8, + "wind_kph": 15.8, + "wind_degree": 133, + "wind_dir": "SE", + "pressure_mb": 1020, + "pressure_in": 30.13, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 86, + "feelslike_c": 1.8, + "feelslike_f": 35.3, + "windchill_c": 1.8, + "windchill_f": 35.3, + "heatindex_c": 5.2, + "heatindex_f": 41.3, + "dewpoint_c": 1.9, + "dewpoint_f": 35.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.6, + "gust_kph": 28.4, + "uv": 0 + }, + { + "time_epoch": 1732330800, + "time": "2024-11-23 04:00", + "temp_c": 4.8, + "temp_f": 40.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 10.5, + "wind_kph": 16.9, + "wind_degree": 130, + "wind_dir": "SE", + "pressure_mb": 1020, + "pressure_in": 30.12, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 44, + "feelslike_c": 1.3, + "feelslike_f": 34.3, + "windchill_c": 1.3, + "windchill_f": 34.3, + "heatindex_c": 4.9, + "heatindex_f": 40.7, + "dewpoint_c": 1.5, + "dewpoint_f": 34.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 18.1, + "gust_kph": 29.1, + "uv": 0 + }, + { + "time_epoch": 1732334400, + "time": "2024-11-23 05:00", + "temp_c": 4.3, + "temp_f": 39.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11, + "wind_kph": 17.6, + "wind_degree": 130, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.1, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 46, + "feelslike_c": 0.5, + "feelslike_f": 32.8, + "windchill_c": 0.5, + "windchill_f": 32.8, + "heatindex_c": 4.3, + "heatindex_f": 39.7, + "dewpoint_c": 1.2, + "dewpoint_f": 34.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.1, + "gust_kph": 30.8, + "uv": 0 + }, + { + "time_epoch": 1732338000, + "time": "2024-11-23 06:00", + "temp_c": 4, + "temp_f": 39.3, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 39, + "feelslike_c": 0.1, + "feelslike_f": 32.2, + "windchill_c": 0.1, + "windchill_f": 32.2, + "heatindex_c": 4, + "heatindex_f": 39.3, + "dewpoint_c": 0.9, + "dewpoint_f": 33.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.8, + "gust_kph": 31.8, + "uv": 0 + }, + { + "time_epoch": 1732341600, + "time": "2024-11-23 07:00", + "temp_c": 4, + "temp_f": 39.3, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 26, + "feelslike_c": 0.1, + "feelslike_f": 32.2, + "windchill_c": 0.1, + "windchill_f": 32.2, + "heatindex_c": 4, + "heatindex_f": 39.3, + "dewpoint_c": 0.6, + "dewpoint_f": 33, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.9, + "gust_kph": 32, + "uv": 0 + }, + { + "time_epoch": 1732345200, + "time": "2024-11-23 08:00", + "temp_c": 4.1, + "temp_f": 39.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 10.5, + "wind_kph": 16.9, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 75, + "cloud": 7, + "feelslike_c": 0.4, + "feelslike_f": 32.6, + "windchill_c": 0.4, + "windchill_f": 32.6, + "heatindex_c": 4.1, + "heatindex_f": 39.4, + "dewpoint_c": 0.1, + "dewpoint_f": 32.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 18.8, + "gust_kph": 30.2, + "uv": 0 + }, + { + "time_epoch": 1732348800, + "time": "2024-11-23 09:00", + "temp_c": 4.6, + "temp_f": 40.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.7, + "wind_kph": 17.3, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 71, + "cloud": 13, + "feelslike_c": 1, + "feelslike_f": 33.7, + "windchill_c": 1, + "windchill_f": 33.7, + "heatindex_c": 4.6, + "heatindex_f": 40.4, + "dewpoint_c": -0.2, + "dewpoint_f": 31.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19, + "gust_kph": 30.5, + "uv": 0 + }, + { + "time_epoch": 1732352400, + "time": "2024-11-23 10:00", + "temp_c": 6.6, + "temp_f": 43.9, + "is_day": 1, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 146, + "wind_dir": "SSE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 63, + "cloud": 49, + "feelslike_c": 3.4, + "feelslike_f": 38, + "windchill_c": 3.4, + "windchill_f": 38, + "heatindex_c": 6.6, + "heatindex_f": 43.9, + "dewpoint_c": 0.2, + "dewpoint_f": 32.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.5, + "gust_kph": 28.2, + "uv": 0.4 + }, + { + "time_epoch": 1732356000, + "time": "2024-11-23 11:00", + "temp_c": 7.4, + "temp_f": 45.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 0, + "feelslike_c": 6, + "feelslike_f": 42.7, + "windchill_c": 6, + "windchill_f": 42.7, + "heatindex_c": 8.7, + "heatindex_f": 47.7, + "dewpoint_c": 1.3, + "dewpoint_f": 34.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.9, + "gust_kph": 25.5, + "uv": 0.9 + }, + { + "time_epoch": 1732359600, + "time": "2024-11-23 12:00", + "temp_c": 10.4, + "temp_f": 50.8, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11, + "wind_kph": 17.6, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.07, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 56, + "cloud": 21, + "feelslike_c": 8.2, + "feelslike_f": 46.7, + "windchill_c": 8.2, + "windchill_f": 46.7, + "heatindex_c": 10.5, + "heatindex_f": 50.8, + "dewpoint_c": 2.2, + "dewpoint_f": 35.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14.7, + "gust_kph": 23.6, + "uv": 1.3 + }, + { + "time_epoch": 1732363200, + "time": "2024-11-23 13:00", + "temp_c": 12.3, + "temp_f": 54.2, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.04, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 52, + "cloud": 22, + "feelslike_c": 10.5, + "feelslike_f": 50.8, + "windchill_c": 10.5, + "windchill_f": 50.8, + "heatindex_c": 12.3, + "heatindex_f": 54.2, + "dewpoint_c": 2.8, + "dewpoint_f": 37, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14.9, + "gust_kph": 23.9, + "uv": 1.6 + }, + { + "time_epoch": 1732366800, + "time": "2024-11-23 14:00", + "temp_c": 13, + "temp_f": 55.4, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.3, + "wind_kph": 16.6, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 12, + "feelslike_c": 11.5, + "feelslike_f": 52.7, + "windchill_c": 11.5, + "windchill_f": 52.7, + "heatindex_c": 13, + "heatindex_f": 55.4, + "dewpoint_c": 3.8, + "dewpoint_f": 38.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14, + "gust_kph": 22.6, + "uv": 1.4 + }, + { + "time_epoch": 1732370400, + "time": "2024-11-23 15:00", + "temp_c": 13.1, + "temp_f": 55.7, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1016, + "pressure_in": 30.01, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 22, + "feelslike_c": 11.5, + "feelslike_f": 52.7, + "windchill_c": 11.5, + "windchill_f": 52.7, + "heatindex_c": 13.2, + "heatindex_f": 55.7, + "dewpoint_c": 4.2, + "dewpoint_f": 39.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 16.8, + "gust_kph": 27.1, + "uv": 0.9 + }, + { + "time_epoch": 1732374000, + "time": "2024-11-23 16:00", + "temp_c": 12.5, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.7, + "wind_kph": 17.3, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 57, + "cloud": 14, + "feelslike_c": 10.7, + "feelslike_f": 51.3, + "windchill_c": 10.7, + "windchill_f": 51.3, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 4.1, + "dewpoint_f": 39.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.5, + "gust_kph": 28.1, + "uv": 0.4 + }, + { + "time_epoch": 1732377600, + "time": "2024-11-23 17:00", + "temp_c": 11.2, + "temp_f": 52.1, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 61, + "cloud": 22, + "feelslike_c": 9, + "feelslike_f": 48.2, + "windchill_c": 9, + "windchill_f": 48.2, + "heatindex_c": 11.2, + "heatindex_f": 52.1, + "dewpoint_c": 4, + "dewpoint_f": 39.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 20.2, + "gust_kph": 32.5, + "uv": 0 + }, + { + "time_epoch": 1732381200, + "time": "2024-11-23 18:00", + "temp_c": 10.2, + "temp_f": 50.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.6, + "wind_kph": 18.7, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 64, + "cloud": 47, + "feelslike_c": 7.8, + "feelslike_f": 46, + "windchill_c": 7.8, + "windchill_f": 46, + "heatindex_c": 10.2, + "heatindex_f": 50.4, + "dewpoint_c": 3.8, + "dewpoint_f": 38.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.2, + "gust_kph": 35.7, + "uv": 0 + }, + { + "time_epoch": 1732384800, + "time": "2024-11-23 19:00", + "temp_c": 10, + "temp_f": 50.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.3, + "wind_kph": 19.8, + "wind_degree": 144, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 66, + "cloud": 62, + "feelslike_c": 7.5, + "feelslike_f": 45.4, + "windchill_c": 7.5, + "windchill_f": 45.4, + "heatindex_c": 10, + "heatindex_f": 50.1, + "dewpoint_c": 4, + "dewpoint_f": 39.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.8, + "gust_kph": 36.8, + "uv": 0 + }, + { + "time_epoch": 1732388400, + "time": "2024-11-23 20:00", + "temp_c": 10, + "temp_f": 50, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 68, + "cloud": 57, + "feelslike_c": 7.3, + "feelslike_f": 45.2, + "windchill_c": 7.3, + "windchill_f": 45.2, + "heatindex_c": 10, + "heatindex_f": 50, + "dewpoint_c": 4.3, + "dewpoint_f": 39.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.6, + "gust_kph": 36.3, + "uv": 0 + }, + { + "time_epoch": 1732392000, + "time": "2024-11-23 21:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 142, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 71, + "cloud": 46, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 4.6, + "dewpoint_f": 40.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.3, + "gust_kph": 35.9, + "uv": 0 + }, + { + "time_epoch": 1732395600, + "time": "2024-11-23 22:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 73, + "cloud": 24, + "feelslike_c": 6.6, + "feelslike_f": 44, + "windchill_c": 6.6, + "windchill_f": 44, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 5, + "dewpoint_f": 41, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23, + "gust_kph": 37, + "uv": 0 + }, + { + "time_epoch": 1732399200, + "time": "2024-11-23 23:00", + "temp_c": 9.3, + "temp_f": 48.8, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.8, + "wind_kph": 20.5, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 21, + "feelslike_c": 6.5, + "feelslike_f": 43.7, + "windchill_c": 6.5, + "windchill_f": 43.7, + "heatindex_c": 9.3, + "heatindex_f": 48.8, + "dewpoint_c": 5.3, + "dewpoint_f": 41.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23, + "gust_kph": 37, + "uv": 0 + } + ] + }, + { + "date": "2024-11-24", + "date_epoch": 1732406400, + "day": { + "maxtemp_c": 17.2, + "maxtemp_f": 63, + "mintemp_c": 9.3, + "mintemp_f": 48.8, + "avgtemp_c": 13, + "avgtemp_f": 55.3, + "maxwind_mph": 16.3, + "maxwind_kph": 26.3, + "totalprecip_mm": 0, + "totalprecip_in": 0, + "totalsnow_cm": 0, + "avgvis_km": 10, + "avgvis_miles": 6, + "avghumidity": 70, + "daily_will_it_rain": 0, + "daily_chance_of_rain": 0, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "uv": 0.3 + }, + "astro": { + "sunrise": "08:12 AM", + "sunset": "05:26 PM", + "moonrise": "01:14 AM", + "moonset": "02:30 PM", + "moon_phase": "Waning Crescent", + "moon_illumination": 41, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732402800, + "time": "2024-11-24 00:00", + "temp_c": 9.3, + "temp_f": 48.8, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 41, + "feelslike_c": 6.5, + "feelslike_f": 43.8, + "windchill_c": 6.5, + "windchill_f": 43.8, + "heatindex_c": 9.3, + "heatindex_f": 48.8, + "dewpoint_c": 5.6, + "dewpoint_f": 42, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.1, + "gust_kph": 37.2, + "uv": 0 + }, + { + "time_epoch": 1732406400, + "time": "2024-11-24 01:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 33, + "feelslike_c": 6.7, + "feelslike_f": 44.1, + "windchill_c": 6.7, + "windchill_f": 44.1, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.4, + "gust_kph": 37.7, + "uv": 0 + }, + { + "time_epoch": 1732410000, + "time": "2024-11-24 02:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.3, + "wind_kph": 19.8, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 22, + "feelslike_c": 7, + "feelslike_f": 44.5, + "windchill_c": 7, + "windchill_f": 44.5, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 5.8, + "dewpoint_f": 42.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.2, + "gust_kph": 37.3, + "uv": 0 + }, + { + "time_epoch": 1732413600, + "time": "2024-11-24 03:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.8, + "wind_kph": 20.5, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 14, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.3, + "gust_kph": 39.2, + "uv": 0 + }, + { + "time_epoch": 1732417200, + "time": "2024-11-24 04:00", + "temp_c": 9.8, + "temp_f": 49.6, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 75, + "cloud": 10, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.8, + "heatindex_f": 49.6, + "dewpoint_c": 5.7, + "dewpoint_f": 42.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.6, + "gust_kph": 39.6, + "uv": 0 + }, + { + "time_epoch": 1732420800, + "time": "2024-11-24 05:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 136, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 10, + "feelslike_c": 6.8, + "feelslike_f": 44.3, + "windchill_c": 6.8, + "windchill_f": 44.3, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.3, + "gust_kph": 40.7, + "uv": 0 + }, + { + "time_epoch": 1732424400, + "time": "2024-11-24 06:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 11, + "feelslike_c": 6.8, + "feelslike_f": 44.3, + "windchill_c": 6.8, + "windchill_f": 44.3, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 5.8, + "dewpoint_f": 42.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.7, + "gust_kph": 41.4, + "uv": 0 + }, + { + "time_epoch": 1732428000, + "time": "2024-11-24 07:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.97, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 8, + "feelslike_c": 6.8, + "feelslike_f": 44.2, + "windchill_c": 6.8, + "windchill_f": 44.2, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 6, + "dewpoint_f": 42.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.5, + "gust_kph": 41, + "uv": 0 + }, + { + "time_epoch": 1732431600, + "time": "2024-11-24 08:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.2, + "wind_kph": 21.2, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 7, + "feelslike_c": 6.9, + "feelslike_f": 44.4, + "windchill_c": 6.9, + "windchill_f": 44.4, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 6.1, + "dewpoint_f": 43, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.8, + "gust_kph": 40, + "uv": 0 + }, + { + "time_epoch": 1732435200, + "time": "2024-11-24 09:00", + "temp_c": 10.1, + "temp_f": 50.1, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 7, + "feelslike_c": 7.3, + "feelslike_f": 45.1, + "windchill_c": 7.3, + "windchill_f": 45.1, + "heatindex_c": 10.1, + "heatindex_f": 50.1, + "dewpoint_c": 6.4, + "dewpoint_f": 43.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.5, + "gust_kph": 39.5, + "uv": 0 + }, + { + "time_epoch": 1732438800, + "time": "2024-11-24 10:00", + "temp_c": 11.4, + "temp_f": 52.5, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 14.5, + "wind_kph": 23.4, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.97, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 74, + "cloud": 5, + "feelslike_c": 8.9, + "feelslike_f": 47.9, + "windchill_c": 8.9, + "windchill_f": 47.9, + "heatindex_c": 11.4, + "heatindex_f": 52.5, + "dewpoint_c": 7, + "dewpoint_f": 44.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.2, + "gust_kph": 37.3, + "uv": 0.4 + }, + { + "time_epoch": 1732442400, + "time": "2024-11-24 11:00", + "temp_c": 13.2, + "temp_f": 55.7, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.96, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 70, + "cloud": 4, + "feelslike_c": 11, + "feelslike_f": 51.8, + "windchill_c": 11, + "windchill_f": 51.8, + "heatindex_c": 13.2, + "heatindex_f": 55.7, + "dewpoint_c": 7.8, + "dewpoint_f": 46, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.5, + "gust_kph": 36.3, + "uv": 0.8 + }, + { + "time_epoch": 1732446000, + "time": "2024-11-24 12:00", + "temp_c": 15, + "temp_f": 58.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.1, + "wind_kph": 25.9, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1014, + "pressure_in": 29.95, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 4, + "feelslike_c": 13.3, + "feelslike_f": 55.9, + "windchill_c": 13.3, + "windchill_f": 55.9, + "heatindex_c": 15, + "heatindex_f": 58.9, + "dewpoint_c": 8.4, + "dewpoint_f": 47.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.9, + "gust_kph": 35.2, + "uv": 1.3 + }, + { + "time_epoch": 1732449600, + "time": "2024-11-24 13:00", + "temp_c": 16.4, + "temp_f": 61.6, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.1, + "wind_kph": 25.9, + "wind_degree": 142, + "wind_dir": "SE", + "pressure_mb": 1013, + "pressure_in": 29.91, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 60, + "cloud": 5, + "feelslike_c": 16.4, + "feelslike_f": 61.6, + "windchill_c": 16.4, + "windchill_f": 61.6, + "heatindex_c": 16.4, + "heatindex_f": 61.6, + "dewpoint_c": 8.8, + "dewpoint_f": 47.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.6, + "gust_kph": 34.7, + "uv": 1.4 + }, + { + "time_epoch": 1732453200, + "time": "2024-11-24 14:00", + "temp_c": 17.2, + "temp_f": 62.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.3, + "wind_kph": 26.3, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1012, + "pressure_in": 29.89, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 4, + "feelslike_c": 17.2, + "feelslike_f": 62.9, + "windchill_c": 17.2, + "windchill_f": 62.9, + "heatindex_c": 17.2, + "heatindex_f": 62.9, + "dewpoint_c": 9, + "dewpoint_f": 48.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.9, + "gust_kph": 36.8, + "uv": 1.3 + }, + { + "time_epoch": 1732456800, + "time": "2024-11-24 15:00", + "temp_c": 17.2, + "temp_f": 63, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.3, + "wind_kph": 26.3, + "wind_degree": 145, + "wind_dir": "SE", + "pressure_mb": 1012, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 1, + "feelslike_c": 17.2, + "feelslike_f": 63, + "windchill_c": 17.2, + "windchill_f": 63, + "heatindex_c": 17.2, + "heatindex_f": 63, + "dewpoint_c": 9.2, + "dewpoint_f": 48.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25, + "gust_kph": 40.2, + "uv": 0.8 + }, + { + "time_epoch": 1732460400, + "time": "2024-11-24 16:00", + "temp_c": 16.6, + "temp_f": 61.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 147, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 61, + "cloud": 3, + "feelslike_c": 16.6, + "feelslike_f": 61.9, + "windchill_c": 16.6, + "windchill_f": 61.9, + "heatindex_c": 16.6, + "heatindex_f": 61.9, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.9, + "gust_kph": 41.7, + "uv": 0.4 + }, + { + "time_epoch": 1732464000, + "time": "2024-11-24 17:00", + "temp_c": 15.7, + "temp_f": 60.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.4, + "wind_kph": 24.8, + "wind_degree": 147, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 22, + "feelslike_c": 15.7, + "feelslike_f": 60.3, + "windchill_c": 15.7, + "windchill_f": 60.3, + "heatindex_c": 15.7, + "heatindex_f": 60.3, + "dewpoint_c": 9.1, + "dewpoint_f": 48.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 27, + "gust_kph": 43.5, + "uv": 0 + }, + { + "time_epoch": 1732467600, + "time": "2024-11-24 18:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 15.4, + "wind_kph": 24.8, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 66, + "cloud": 15, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 9.1, + "dewpoint_f": 48.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 27.8, + "gust_kph": 44.8, + "uv": 0 + }, + { + "time_epoch": 1732471200, + "time": "2024-11-24 19:00", + "temp_c": 15.2, + "temp_f": 59.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 47, + "feelslike_c": 15.2, + "feelslike_f": 59.4, + "windchill_c": 15.2, + "windchill_f": 59.4, + "heatindex_c": 15.2, + "heatindex_f": 59.4, + "dewpoint_c": 9.1, + "dewpoint_f": 48.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 28.4, + "gust_kph": 45.7, + "uv": 0 + }, + { + "time_epoch": 1732474800, + "time": "2024-11-24 20:00", + "temp_c": 15.2, + "temp_f": 59.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 14.8, + "wind_kph": 23.8, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1012, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 56, + "feelslike_c": 15.2, + "feelslike_f": 59.4, + "windchill_c": 15.2, + "windchill_f": 59.4, + "heatindex_c": 15.2, + "heatindex_f": 59.4, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.5, + "gust_kph": 42.6, + "uv": 0 + }, + { + "time_epoch": 1732478400, + "time": "2024-11-24 21:00", + "temp_c": 15.4, + "temp_f": 59.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 14.3, + "wind_kph": 23, + "wind_degree": 151, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 49, + "feelslike_c": 15.4, + "feelslike_f": 59.7, + "windchill_c": 15.4, + "windchill_f": 59.7, + "heatindex_c": 15.4, + "heatindex_f": 59.7, + "dewpoint_c": 9.3, + "dewpoint_f": 48.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.7, + "gust_kph": 39.8, + "uv": 0 + }, + { + "time_epoch": 1732482000, + "time": "2024-11-24 22:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 155, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 47, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.7, + "gust_kph": 36.5, + "uv": 0 + }, + { + "time_epoch": 1732485600, + "time": "2024-11-24 23:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 151, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 66, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.8, + "dewpoint_f": 47.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.8, + "gust_kph": 38.3, + "uv": 0 + } + ] + }, + { + "date": "2024-11-25", + "date_epoch": 1732492800, + "day": { + "maxtemp_c": 15.5, + "maxtemp_f": 59.8, + "mintemp_c": 9.5, + "mintemp_f": 49.1, + "avgtemp_c": 12.7, + "avgtemp_f": 54.8, + "maxwind_mph": 15, + "maxwind_kph": 24.1, + "totalprecip_mm": 7.56, + "totalprecip_in": 0.3, + "totalsnow_cm": 0, + "avgvis_km": 8.6, + "avgvis_miles": 5, + "avghumidity": 80, + "daily_will_it_rain": 1, + "daily_chance_of_rain": 89, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Moderate rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/302.png", + "code": 1189 + }, + "uv": 0 + }, + "astro": { + "sunrise": "08:13 AM", + "sunset": "05:26 PM", + "moonrise": "02:17 AM", + "moonset": "02:46 PM", + "moon_phase": "Waning Crescent", + "moon_illumination": 32, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732489200, + "time": "2024-11-25 00:00", + "temp_c": 15.5, + "temp_f": 59.8, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 153, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.85, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 63, + "cloud": 66, + "feelslike_c": 15.5, + "feelslike_f": 59.8, + "windchill_c": 15.5, + "windchill_f": 59.8, + "heatindex_c": 15.5, + "heatindex_f": 59.8, + "dewpoint_c": 8.5, + "dewpoint_f": 47.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.7, + "gust_kph": 39.7, + "uv": 0 + }, + { + "time_epoch": 1732492800, + "time": "2024-11-25 01:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 64, + "cloud": 56, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.5, + "dewpoint_f": 47.3, + "will_it_rain": 0, + "chance_of_rain": 69, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.1, + "gust_kph": 42.1, + "uv": 0 + }, + { + "time_epoch": 1732496400, + "time": "2024-11-25 02:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 14.5, + "wind_kph": 23.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1010, + "pressure_in": 29.82, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 62, + "cloud": 67, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.1, + "dewpoint_f": 46.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.6, + "gust_kph": 42.7, + "uv": 0 + }, + { + "time_epoch": 1732500000, + "time": "2024-11-25 03:00", + "temp_c": 15.5, + "temp_f": 60, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 154, + "wind_dir": "SSE", + "pressure_mb": 1010, + "pressure_in": 29.81, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 82, + "feelslike_c": 15.5, + "feelslike_f": 60, + "windchill_c": 15.5, + "windchill_f": 60, + "heatindex_c": 15.5, + "heatindex_f": 60, + "dewpoint_c": 7.5, + "dewpoint_f": 45.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.2, + "gust_kph": 42.1, + "uv": 0 + }, + { + "time_epoch": 1732503600, + "time": "2024-11-25 04:00", + "temp_c": 16.4, + "temp_f": 61.6, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 160, + "wind_dir": "SSE", + "pressure_mb": 1009, + "pressure_in": 29.79, + "precip_mm": 0.01, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 85, + "feelslike_c": 16.4, + "feelslike_f": 61.6, + "windchill_c": 16.4, + "windchill_f": 61.6, + "heatindex_c": 16.4, + "heatindex_f": 61.6, + "dewpoint_c": 7, + "dewpoint_f": 44.7, + "will_it_rain": 0, + "chance_of_rain": 70, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.5, + "gust_kph": 42.7, + "uv": 0 + }, + { + "time_epoch": 1732507200, + "time": "2024-11-25 05:00", + "temp_c": 15.5, + "temp_f": 59.9, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 154, + "wind_dir": "SSE", + "pressure_mb": 1009, + "pressure_in": 29.8, + "precip_mm": 0.01, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 86, + "feelslike_c": 15.5, + "feelslike_f": 59.9, + "windchill_c": 15.5, + "windchill_f": 59.9, + "heatindex_c": 15.5, + "heatindex_f": 59.9, + "dewpoint_c": 7.5, + "dewpoint_f": 45.5, + "will_it_rain": 0, + "chance_of_rain": 67, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.5, + "gust_kph": 34.5, + "uv": 0 + }, + { + "time_epoch": 1732510800, + "time": "2024-11-25 06:00", + "temp_c": 15.5, + "temp_f": 59.8, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 8.5, + "wind_kph": 13.7, + "wind_degree": 181, + "wind_dir": "S", + "pressure_mb": 1010, + "pressure_in": 29.83, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 60, + "cloud": 85, + "feelslike_c": 15.5, + "feelslike_f": 59.8, + "windchill_c": 15.5, + "windchill_f": 59.8, + "heatindex_c": 15.5, + "heatindex_f": 59.8, + "dewpoint_c": 7.8, + "dewpoint_f": 46.1, + "will_it_rain": 0, + "chance_of_rain": 64, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.4, + "gust_kph": 24.8, + "uv": 0 + }, + { + "time_epoch": 1732514400, + "time": "2024-11-25 07:00", + "temp_c": 15.1, + "temp_f": 59.1, + "is_day": 0, + "condition": { + "text": "Patchy light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/night/263.png", + "code": 1150 + }, + "wind_mph": 7.2, + "wind_kph": 11.5, + "wind_degree": 238, + "wind_dir": "WSW", + "pressure_mb": 1011, + "pressure_in": 29.84, + "precip_mm": 0.32, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 73, + "cloud": 71, + "feelslike_c": 15.1, + "feelslike_f": 59.1, + "windchill_c": 15.1, + "windchill_f": 59.1, + "heatindex_c": 15.1, + "heatindex_f": 59.1, + "dewpoint_c": 10.2, + "dewpoint_f": 50.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 5, + "vis_miles": 3, + "gust_mph": 12.5, + "gust_kph": 20.1, + "uv": 0 + }, + { + "time_epoch": 1732518000, + "time": "2024-11-25 08:00", + "temp_c": 13.6, + "temp_f": 56.5, + "is_day": 0, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/night/296.png", + "code": 1183 + }, + "wind_mph": 8.5, + "wind_kph": 13.7, + "wind_degree": 301, + "wind_dir": "WNW", + "pressure_mb": 1012, + "pressure_in": 29.88, + "precip_mm": 0.84, + "precip_in": 0.03, + "snow_cm": 0, + "humidity": 91, + "cloud": 100, + "feelslike_c": 12.5, + "feelslike_f": 54.5, + "windchill_c": 12.5, + "windchill_f": 54.5, + "heatindex_c": 13.6, + "heatindex_f": 56.5, + "dewpoint_c": 12.2, + "dewpoint_f": 53.9, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 12.6, + "gust_kph": 20.3, + "uv": 0 + }, + { + "time_epoch": 1732521600, + "time": "2024-11-25 09:00", + "temp_c": 12.4, + "temp_f": 54.3, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 316, + "wind_dir": "NW", + "pressure_mb": 1013, + "pressure_in": 29.92, + "precip_mm": 0.73, + "precip_in": 0.03, + "snow_cm": 0, + "humidity": 92, + "cloud": 100, + "feelslike_c": 11.4, + "feelslike_f": 52.5, + "windchill_c": 11.4, + "windchill_f": 52.5, + "heatindex_c": 12.4, + "heatindex_f": 54.3, + "dewpoint_c": 11.1, + "dewpoint_f": 52.1, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 9.8, + "gust_kph": 15.7, + "uv": 0 + }, + { + "time_epoch": 1732525200, + "time": "2024-11-25 10:00", + "temp_c": 12.4, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 290, + "wind_dir": "WNW", + "pressure_mb": 1014, + "pressure_in": 29.95, + "precip_mm": 0.89, + "precip_in": 0.04, + "snow_cm": 0, + "humidity": 92, + "cloud": 100, + "feelslike_c": 11.8, + "feelslike_f": 53.3, + "windchill_c": 11.8, + "windchill_f": 53.3, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 11.2, + "dewpoint_f": 52.1, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 7.5, + "gust_kph": 12.1, + "uv": 0 + }, + { + "time_epoch": 1732528800, + "time": "2024-11-25 11:00", + "temp_c": 12.5, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 6, + "wind_kph": 9.7, + "wind_degree": 311, + "wind_dir": "NW", + "pressure_mb": 1015, + "pressure_in": 29.96, + "precip_mm": 1.36, + "precip_in": 0.05, + "snow_cm": 0, + "humidity": 93, + "cloud": 100, + "feelslike_c": 11.6, + "feelslike_f": 52.9, + "windchill_c": 11.6, + "windchill_f": 52.9, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 11.3, + "dewpoint_f": 52.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 8.6, + "gust_kph": 13.8, + "uv": 0.1 + }, + { + "time_epoch": 1732532400, + "time": "2024-11-25 12:00", + "temp_c": 11.9, + "temp_f": 53.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 8.3, + "wind_kph": 13.3, + "wind_degree": 308, + "wind_dir": "NW", + "pressure_mb": 1016, + "pressure_in": 29.99, + "precip_mm": 2.14, + "precip_in": 0.08, + "snow_cm": 0, + "humidity": 93, + "cloud": 100, + "feelslike_c": 10.4, + "feelslike_f": 50.8, + "windchill_c": 10.4, + "windchill_f": 50.8, + "heatindex_c": 11.9, + "heatindex_f": 53.4, + "dewpoint_c": 10.8, + "dewpoint_f": 51.4, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 11.6, + "gust_kph": 18.6, + "uv": 0.1 + }, + { + "time_epoch": 1732536000, + "time": "2024-11-25 13:00", + "temp_c": 11.3, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Light rain shower", + "icon": "//cdn.weatherapi.com/weather/64x64/day/353.png", + "code": 1240 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 302, + "wind_dir": "WNW", + "pressure_mb": 1016, + "pressure_in": 30.01, + "precip_mm": 0.24, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 89, + "cloud": 100, + "feelslike_c": 10.1, + "feelslike_f": 50.2, + "windchill_c": 10.1, + "windchill_f": 50.2, + "heatindex_c": 11.3, + "heatindex_f": 52.4, + "dewpoint_c": 9.6, + "dewpoint_f": 49.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.5, + "gust_kph": 15.2, + "uv": 0.1 + }, + { + "time_epoch": 1732539600, + "time": "2024-11-25 14:00", + "temp_c": 11.3, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 283, + "wind_dir": "WNW", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0.37, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 89, + "cloud": 100, + "feelslike_c": 10.4, + "feelslike_f": 50.7, + "windchill_c": 10.4, + "windchill_f": 50.7, + "heatindex_c": 11.3, + "heatindex_f": 52.4, + "dewpoint_c": 9.5, + "dewpoint_f": 49.2, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 8, + "gust_kph": 12.9, + "uv": 0.1 + }, + { + "time_epoch": 1732543200, + "time": "2024-11-25 15:00", + "temp_c": 11.3, + "temp_f": 52.3, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 7.4, + "wind_kph": 11.9, + "wind_degree": 269, + "wind_dir": "W", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0.45, + "precip_in": 0.02, + "snow_cm": 0, + "humidity": 88, + "cloud": 100, + "feelslike_c": 9.9, + "feelslike_f": 49.7, + "windchill_c": 9.9, + "windchill_f": 49.7, + "heatindex_c": 11.3, + "heatindex_f": 52.3, + "dewpoint_c": 9.4, + "dewpoint_f": 49, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 11, + "gust_kph": 17.6, + "uv": 0.1 + }, + { + "time_epoch": 1732546800, + "time": "2024-11-25 16:00", + "temp_c": 11.4, + "temp_f": 52.5, + "is_day": 1, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/119.png", + "code": 1006 + }, + "wind_mph": 3.6, + "wind_kph": 5.8, + "wind_degree": 244, + "wind_dir": "WSW", + "pressure_mb": 1018, + "pressure_in": 30.07, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 82, + "cloud": 65, + "feelslike_c": 11.2, + "feelslike_f": 52.1, + "windchill_c": 11.2, + "windchill_f": 52.1, + "heatindex_c": 11.4, + "heatindex_f": 52.5, + "dewpoint_c": 8.4, + "dewpoint_f": 47.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 5.6, + "gust_kph": 9, + "uv": 0.1 + }, + { + "time_epoch": 1732550400, + "time": "2024-11-25 17:00", + "temp_c": 11.4, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/day/176.png", + "code": 1063 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 191, + "wind_dir": "SSW", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0.02, + "precip_in": 0, + "snow_cm": 0, + "humidity": 82, + "cloud": 58, + "feelslike_c": 10.5, + "feelslike_f": 51, + "windchill_c": 10.5, + "windchill_f": 51, + "heatindex_c": 11.4, + "heatindex_f": 52.4, + "dewpoint_c": 8.4, + "dewpoint_f": 47, + "will_it_rain": 1, + "chance_of_rain": 89, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 8.4, + "gust_kph": 13.5, + "uv": 0 + }, + { + "time_epoch": 1732554000, + "time": "2024-11-25 18:00", + "temp_c": 11.1, + "temp_f": 51.9, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 207, + "wind_dir": "SSW", + "pressure_mb": 1020, + "pressure_in": 30.11, + "precip_mm": 0.02, + "precip_in": 0, + "snow_cm": 0, + "humidity": 85, + "cloud": 89, + "feelslike_c": 10.1, + "feelslike_f": 50.1, + "windchill_c": 10.1, + "windchill_f": 50.1, + "heatindex_c": 11.1, + "heatindex_f": 51.9, + "dewpoint_c": 8.6, + "dewpoint_f": 47.4, + "will_it_rain": 1, + "chance_of_rain": 76, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.4, + "gust_kph": 15.2, + "uv": 0 + }, + { + "time_epoch": 1732557600, + "time": "2024-11-25 19:00", + "temp_c": 10.6, + "temp_f": 51.1, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 6, + "wind_kph": 9.7, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1020, + "pressure_in": 30.13, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 88, + "cloud": 88, + "feelslike_c": 9.4, + "feelslike_f": 48.9, + "windchill_c": 9.4, + "windchill_f": 48.9, + "heatindex_c": 10.6, + "heatindex_f": 51.1, + "dewpoint_c": 8.8, + "dewpoint_f": 47.8, + "will_it_rain": 1, + "chance_of_rain": 76, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.6, + "gust_kph": 17.1, + "uv": 0 + }, + { + "time_epoch": 1732561200, + "time": "2024-11-25 20:00", + "temp_c": 10.1, + "temp_f": 50.2, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1021, + "pressure_in": 30.16, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 92, + "cloud": 87, + "feelslike_c": 8.9, + "feelslike_f": 48.1, + "windchill_c": 8.9, + "windchill_f": 48.1, + "heatindex_c": 10.1, + "heatindex_f": 50.2, + "dewpoint_c": 8.8, + "dewpoint_f": 47.9, + "will_it_rain": 1, + "chance_of_rain": 75, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.5, + "gust_kph": 16.9, + "uv": 0 + }, + { + "time_epoch": 1732564800, + "time": "2024-11-25 21:00", + "temp_c": 9.8, + "temp_f": 49.6, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1022, + "pressure_in": 30.17, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 18, + "feelslike_c": 8.7, + "feelslike_f": 47.7, + "windchill_c": 8.7, + "windchill_f": 47.7, + "heatindex_c": 9.8, + "heatindex_f": 49.6, + "dewpoint_c": 8.7, + "dewpoint_f": 47.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.2, + "gust_kph": 16.3, + "uv": 0 + }, + { + "time_epoch": 1732568400, + "time": "2024-11-25 22:00", + "temp_c": 9.6, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1022, + "pressure_in": 30.19, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 24, + "feelslike_c": 8.5, + "feelslike_f": 47.4, + "windchill_c": 8.5, + "windchill_f": 47.4, + "heatindex_c": 9.6, + "heatindex_f": 49.4, + "dewpoint_c": 8.6, + "dewpoint_f": 47.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.2, + "gust_kph": 16.5, + "uv": 0 + }, + { + "time_epoch": 1732572000, + "time": "2024-11-25 23:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 4.9, + "wind_kph": 7.9, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1023, + "pressure_in": 30.2, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 26, + "feelslike_c": 8.4, + "feelslike_f": 47.2, + "windchill_c": 8.4, + "windchill_f": 47.2, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 8.5, + "dewpoint_f": 47.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.8, + "gust_kph": 15.8, + "uv": 0 + } + ] + } + ] + } +} \ No newline at end of file diff --git a/src/test/resources/WeatherAPI/Bordeaux-4-partial-sunny-rain-cloudy.json b/src/test/resources/WeatherAPI/Bordeaux-4-partial-sunny-rain-cloudy.json new file mode 100644 index 0000000..a5781ec --- /dev/null +++ b/src/test/resources/WeatherAPI/Bordeaux-4-partial-sunny-rain-cloudy.json @@ -0,0 +1,4059 @@ +{ + "location": { + "name": "Bordeaux", + "region": "Aquitaine", + "country": "France", + "lat": 44.8333, + "lon": -0.5667, + "tz_id": "Europe/Paris", + "localtime_epoch": 1732356248, + "localtime": "2024-11-23 11:04" + }, + "current": { + "last_updated_epoch": 1732356000, + "last_updated": "2024-11-23 11:00", + "temp_c": 7.4, + "temp_f": 45.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0, + "precip_in": 0, + "humidity": 76, + "cloud": 0, + "feelslike_c": 4.3, + "feelslike_f": 39.7, + "windchill_c": 6, + "windchill_f": 42.7, + "heatindex_c": 8.7, + "heatindex_f": 47.7, + "dewpoint_c": 1.3, + "dewpoint_f": 34.3, + "vis_km": 10, + "vis_miles": 6, + "uv": 0.9, + "gust_mph": 15.9, + "gust_kph": 25.5 + }, + "forecast": { + "forecastday": [ + { + "date": "2024-11-23", + "date_epoch": 1732320000, + "day": { + "maxtemp_c": 13.1, + "maxtemp_f": 55.7, + "mintemp_c": 4, + "mintemp_f": 39.3, + "avgtemp_c": 8.1, + "avgtemp_f": 46.6, + "maxwind_mph": 13, + "maxwind_kph": 20.9, + "totalprecip_mm": 0, + "totalprecip_in": 0, + "totalsnow_cm": 0, + "avgvis_km": 10, + "avgvis_miles": 6, + "avghumidity": 69, + "daily_will_it_rain": 0, + "daily_chance_of_rain": 0, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/116.png", + "code": 1003 + }, + "uv": 0.3 + }, + "astro": { + "sunrise": "08:10 AM", + "sunset": "05:27 PM", + "moonrise": "12:08 AM", + "moonset": "02:13 PM", + "moon_phase": "Last Quarter", + "moon_illumination": 51, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732316400, + "time": "2024-11-23 00:00", + "temp_c": 5.6, + "temp_f": 42, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1022, + "pressure_in": 30.19, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 81, + "cloud": 17, + "feelslike_c": 3.2, + "feelslike_f": 37.7, + "windchill_c": 3.2, + "windchill_f": 37.7, + "heatindex_c": 5.6, + "heatindex_f": 42, + "dewpoint_c": 2.6, + "dewpoint_f": 36.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 13.7, + "gust_kph": 22, + "uv": 0 + }, + { + "time_epoch": 1732320000, + "time": "2024-11-23 01:00", + "temp_c": 5.8, + "temp_f": 42.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 6.9, + "wind_kph": 11.2, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1022, + "pressure_in": 30.17, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 47, + "feelslike_c": 3.3, + "feelslike_f": 38, + "windchill_c": 3.3, + "windchill_f": 38, + "heatindex_c": 5.8, + "heatindex_f": 42.4, + "dewpoint_c": 2.5, + "dewpoint_f": 36.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 13.4, + "gust_kph": 21.6, + "uv": 0 + }, + { + "time_epoch": 1732323600, + "time": "2024-11-23 02:00", + "temp_c": 5.6, + "temp_f": 42.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 8.3, + "wind_kph": 13.3, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1021, + "pressure_in": 30.14, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 56, + "feelslike_c": 2.8, + "feelslike_f": 37, + "windchill_c": 2.8, + "windchill_f": 37, + "heatindex_c": 5.6, + "heatindex_f": 42.1, + "dewpoint_c": 2.3, + "dewpoint_f": 36.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.3, + "gust_kph": 24.7, + "uv": 0 + }, + { + "time_epoch": 1732327200, + "time": "2024-11-23 03:00", + "temp_c": 5.1, + "temp_f": 41.3, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 9.8, + "wind_kph": 15.8, + "wind_degree": 133, + "wind_dir": "SE", + "pressure_mb": 1020, + "pressure_in": 30.13, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 86, + "feelslike_c": 1.8, + "feelslike_f": 35.3, + "windchill_c": 1.8, + "windchill_f": 35.3, + "heatindex_c": 5.2, + "heatindex_f": 41.3, + "dewpoint_c": 1.9, + "dewpoint_f": 35.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.6, + "gust_kph": 28.4, + "uv": 0 + }, + { + "time_epoch": 1732330800, + "time": "2024-11-23 04:00", + "temp_c": 4.8, + "temp_f": 40.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 10.5, + "wind_kph": 16.9, + "wind_degree": 130, + "wind_dir": "SE", + "pressure_mb": 1020, + "pressure_in": 30.12, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 44, + "feelslike_c": 1.3, + "feelslike_f": 34.3, + "windchill_c": 1.3, + "windchill_f": 34.3, + "heatindex_c": 4.9, + "heatindex_f": 40.7, + "dewpoint_c": 1.5, + "dewpoint_f": 34.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 18.1, + "gust_kph": 29.1, + "uv": 0 + }, + { + "time_epoch": 1732334400, + "time": "2024-11-23 05:00", + "temp_c": 4.3, + "temp_f": 39.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11, + "wind_kph": 17.6, + "wind_degree": 130, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.1, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 46, + "feelslike_c": 0.5, + "feelslike_f": 32.8, + "windchill_c": 0.5, + "windchill_f": 32.8, + "heatindex_c": 4.3, + "heatindex_f": 39.7, + "dewpoint_c": 1.2, + "dewpoint_f": 34.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.1, + "gust_kph": 30.8, + "uv": 0 + }, + { + "time_epoch": 1732338000, + "time": "2024-11-23 06:00", + "temp_c": 4, + "temp_f": 39.3, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 39, + "feelslike_c": 0.1, + "feelslike_f": 32.2, + "windchill_c": 0.1, + "windchill_f": 32.2, + "heatindex_c": 4, + "heatindex_f": 39.3, + "dewpoint_c": 0.9, + "dewpoint_f": 33.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.8, + "gust_kph": 31.8, + "uv": 0 + }, + { + "time_epoch": 1732341600, + "time": "2024-11-23 07:00", + "temp_c": 4, + "temp_f": 39.3, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 26, + "feelslike_c": 0.1, + "feelslike_f": 32.2, + "windchill_c": 0.1, + "windchill_f": 32.2, + "heatindex_c": 4, + "heatindex_f": 39.3, + "dewpoint_c": 0.6, + "dewpoint_f": 33, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.9, + "gust_kph": 32, + "uv": 0 + }, + { + "time_epoch": 1732345200, + "time": "2024-11-23 08:00", + "temp_c": 4.1, + "temp_f": 39.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 10.5, + "wind_kph": 16.9, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 75, + "cloud": 7, + "feelslike_c": 0.4, + "feelslike_f": 32.6, + "windchill_c": 0.4, + "windchill_f": 32.6, + "heatindex_c": 4.1, + "heatindex_f": 39.4, + "dewpoint_c": 0.1, + "dewpoint_f": 32.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 18.8, + "gust_kph": 30.2, + "uv": 0 + }, + { + "time_epoch": 1732348800, + "time": "2024-11-23 09:00", + "temp_c": 4.6, + "temp_f": 40.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.7, + "wind_kph": 17.3, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 71, + "cloud": 13, + "feelslike_c": 1, + "feelslike_f": 33.7, + "windchill_c": 1, + "windchill_f": 33.7, + "heatindex_c": 4.6, + "heatindex_f": 40.4, + "dewpoint_c": -0.2, + "dewpoint_f": 31.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19, + "gust_kph": 30.5, + "uv": 0 + }, + { + "time_epoch": 1732352400, + "time": "2024-11-23 10:00", + "temp_c": 6.6, + "temp_f": 43.9, + "is_day": 1, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 146, + "wind_dir": "SSE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 63, + "cloud": 49, + "feelslike_c": 3.4, + "feelslike_f": 38, + "windchill_c": 3.4, + "windchill_f": 38, + "heatindex_c": 6.6, + "heatindex_f": 43.9, + "dewpoint_c": 0.2, + "dewpoint_f": 32.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.5, + "gust_kph": 28.2, + "uv": 0.4 + }, + { + "time_epoch": 1732356000, + "time": "2024-11-23 11:00", + "temp_c": 7.4, + "temp_f": 45.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 0, + "feelslike_c": 6, + "feelslike_f": 42.7, + "windchill_c": 6, + "windchill_f": 42.7, + "heatindex_c": 8.7, + "heatindex_f": 47.7, + "dewpoint_c": 1.3, + "dewpoint_f": 34.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.9, + "gust_kph": 25.5, + "uv": 0.9 + }, + { + "time_epoch": 1732359600, + "time": "2024-11-23 12:00", + "temp_c": 10.4, + "temp_f": 50.8, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11, + "wind_kph": 17.6, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.07, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 56, + "cloud": 21, + "feelslike_c": 8.2, + "feelslike_f": 46.7, + "windchill_c": 8.2, + "windchill_f": 46.7, + "heatindex_c": 10.5, + "heatindex_f": 50.8, + "dewpoint_c": 2.2, + "dewpoint_f": 35.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14.7, + "gust_kph": 23.6, + "uv": 1.3 + }, + { + "time_epoch": 1732363200, + "time": "2024-11-23 13:00", + "temp_c": 12.3, + "temp_f": 54.2, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.04, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 52, + "cloud": 22, + "feelslike_c": 10.5, + "feelslike_f": 50.8, + "windchill_c": 10.5, + "windchill_f": 50.8, + "heatindex_c": 12.3, + "heatindex_f": 54.2, + "dewpoint_c": 2.8, + "dewpoint_f": 37, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14.9, + "gust_kph": 23.9, + "uv": 1.6 + }, + { + "time_epoch": 1732366800, + "time": "2024-11-23 14:00", + "temp_c": 13, + "temp_f": 55.4, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.3, + "wind_kph": 16.6, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 12, + "feelslike_c": 11.5, + "feelslike_f": 52.7, + "windchill_c": 11.5, + "windchill_f": 52.7, + "heatindex_c": 13, + "heatindex_f": 55.4, + "dewpoint_c": 3.8, + "dewpoint_f": 38.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14, + "gust_kph": 22.6, + "uv": 1.4 + }, + { + "time_epoch": 1732370400, + "time": "2024-11-23 15:00", + "temp_c": 13.1, + "temp_f": 55.7, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1016, + "pressure_in": 30.01, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 22, + "feelslike_c": 11.5, + "feelslike_f": 52.7, + "windchill_c": 11.5, + "windchill_f": 52.7, + "heatindex_c": 13.2, + "heatindex_f": 55.7, + "dewpoint_c": 4.2, + "dewpoint_f": 39.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 16.8, + "gust_kph": 27.1, + "uv": 0.9 + }, + { + "time_epoch": 1732374000, + "time": "2024-11-23 16:00", + "temp_c": 12.5, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.7, + "wind_kph": 17.3, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 57, + "cloud": 14, + "feelslike_c": 10.7, + "feelslike_f": 51.3, + "windchill_c": 10.7, + "windchill_f": 51.3, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 4.1, + "dewpoint_f": 39.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.5, + "gust_kph": 28.1, + "uv": 0.4 + }, + { + "time_epoch": 1732377600, + "time": "2024-11-23 17:00", + "temp_c": 11.2, + "temp_f": 52.1, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 61, + "cloud": 22, + "feelslike_c": 9, + "feelslike_f": 48.2, + "windchill_c": 9, + "windchill_f": 48.2, + "heatindex_c": 11.2, + "heatindex_f": 52.1, + "dewpoint_c": 4, + "dewpoint_f": 39.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 20.2, + "gust_kph": 32.5, + "uv": 0 + }, + { + "time_epoch": 1732381200, + "time": "2024-11-23 18:00", + "temp_c": 10.2, + "temp_f": 50.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.6, + "wind_kph": 18.7, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 64, + "cloud": 47, + "feelslike_c": 7.8, + "feelslike_f": 46, + "windchill_c": 7.8, + "windchill_f": 46, + "heatindex_c": 10.2, + "heatindex_f": 50.4, + "dewpoint_c": 3.8, + "dewpoint_f": 38.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.2, + "gust_kph": 35.7, + "uv": 0 + }, + { + "time_epoch": 1732384800, + "time": "2024-11-23 19:00", + "temp_c": 10, + "temp_f": 50.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.3, + "wind_kph": 19.8, + "wind_degree": 144, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 66, + "cloud": 62, + "feelslike_c": 7.5, + "feelslike_f": 45.4, + "windchill_c": 7.5, + "windchill_f": 45.4, + "heatindex_c": 10, + "heatindex_f": 50.1, + "dewpoint_c": 4, + "dewpoint_f": 39.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.8, + "gust_kph": 36.8, + "uv": 0 + }, + { + "time_epoch": 1732388400, + "time": "2024-11-23 20:00", + "temp_c": 10, + "temp_f": 50, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 68, + "cloud": 57, + "feelslike_c": 7.3, + "feelslike_f": 45.2, + "windchill_c": 7.3, + "windchill_f": 45.2, + "heatindex_c": 10, + "heatindex_f": 50, + "dewpoint_c": 4.3, + "dewpoint_f": 39.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.6, + "gust_kph": 36.3, + "uv": 0 + }, + { + "time_epoch": 1732392000, + "time": "2024-11-23 21:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 142, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 71, + "cloud": 46, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 4.6, + "dewpoint_f": 40.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.3, + "gust_kph": 35.9, + "uv": 0 + }, + { + "time_epoch": 1732395600, + "time": "2024-11-23 22:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 73, + "cloud": 24, + "feelslike_c": 6.6, + "feelslike_f": 44, + "windchill_c": 6.6, + "windchill_f": 44, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 5, + "dewpoint_f": 41, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23, + "gust_kph": 37, + "uv": 0 + }, + { + "time_epoch": 1732399200, + "time": "2024-11-23 23:00", + "temp_c": 9.3, + "temp_f": 48.8, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.8, + "wind_kph": 20.5, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 21, + "feelslike_c": 6.5, + "feelslike_f": 43.7, + "windchill_c": 6.5, + "windchill_f": 43.7, + "heatindex_c": 9.3, + "heatindex_f": 48.8, + "dewpoint_c": 5.3, + "dewpoint_f": 41.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23, + "gust_kph": 37, + "uv": 0 + } + ] + }, + { + "date": "2024-11-24", + "date_epoch": 1732406400, + "day": { + "maxtemp_c": 17.2, + "maxtemp_f": 63, + "mintemp_c": 9.3, + "mintemp_f": 48.8, + "avgtemp_c": 13, + "avgtemp_f": 55.3, + "maxwind_mph": 16.3, + "maxwind_kph": 26.3, + "totalprecip_mm": 0, + "totalprecip_in": 0, + "totalsnow_cm": 0, + "avgvis_km": 10, + "avgvis_miles": 6, + "avghumidity": 70, + "daily_will_it_rain": 0, + "daily_chance_of_rain": 0, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "uv": 0.3 + }, + "astro": { + "sunrise": "08:12 AM", + "sunset": "05:26 PM", + "moonrise": "01:14 AM", + "moonset": "02:30 PM", + "moon_phase": "Waning Crescent", + "moon_illumination": 41, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732402800, + "time": "2024-11-24 00:00", + "temp_c": 9.3, + "temp_f": 48.8, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 41, + "feelslike_c": 6.5, + "feelslike_f": 43.8, + "windchill_c": 6.5, + "windchill_f": 43.8, + "heatindex_c": 9.3, + "heatindex_f": 48.8, + "dewpoint_c": 5.6, + "dewpoint_f": 42, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.1, + "gust_kph": 37.2, + "uv": 0 + }, + { + "time_epoch": 1732406400, + "time": "2024-11-24 01:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 33, + "feelslike_c": 6.7, + "feelslike_f": 44.1, + "windchill_c": 6.7, + "windchill_f": 44.1, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.4, + "gust_kph": 37.7, + "uv": 0 + }, + { + "time_epoch": 1732410000, + "time": "2024-11-24 02:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.3, + "wind_kph": 19.8, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 22, + "feelslike_c": 7, + "feelslike_f": 44.5, + "windchill_c": 7, + "windchill_f": 44.5, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 5.8, + "dewpoint_f": 42.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.2, + "gust_kph": 37.3, + "uv": 0 + }, + { + "time_epoch": 1732413600, + "time": "2024-11-24 03:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.8, + "wind_kph": 20.5, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 14, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.3, + "gust_kph": 39.2, + "uv": 0 + }, + { + "time_epoch": 1732417200, + "time": "2024-11-24 04:00", + "temp_c": 9.8, + "temp_f": 49.6, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 75, + "cloud": 10, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.8, + "heatindex_f": 49.6, + "dewpoint_c": 5.7, + "dewpoint_f": 42.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.6, + "gust_kph": 39.6, + "uv": 0 + }, + { + "time_epoch": 1732420800, + "time": "2024-11-24 05:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 136, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 10, + "feelslike_c": 6.8, + "feelslike_f": 44.3, + "windchill_c": 6.8, + "windchill_f": 44.3, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 5.7, + "dewpoint_f": 42.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.3, + "gust_kph": 40.7, + "uv": 0 + }, + { + "time_epoch": 1732424400, + "time": "2024-11-24 06:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 77, + "cloud": 11, + "feelslike_c": 6.8, + "feelslike_f": 44.3, + "windchill_c": 6.8, + "windchill_f": 44.3, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 5.8, + "dewpoint_f": 42.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.7, + "gust_kph": 41.4, + "uv": 0 + }, + { + "time_epoch": 1732428000, + "time": "2024-11-24 07:00", + "temp_c": 9.7, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.97, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 8, + "feelslike_c": 6.8, + "feelslike_f": 44.2, + "windchill_c": 6.8, + "windchill_f": 44.2, + "heatindex_c": 9.7, + "heatindex_f": 49.4, + "dewpoint_c": 6, + "dewpoint_f": 42.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.5, + "gust_kph": 41, + "uv": 0 + }, + { + "time_epoch": 1732431600, + "time": "2024-11-24 08:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13.2, + "wind_kph": 21.2, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 7, + "feelslike_c": 6.9, + "feelslike_f": 44.4, + "windchill_c": 6.9, + "windchill_f": 44.4, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 6.1, + "dewpoint_f": 43, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.8, + "gust_kph": 40, + "uv": 0 + }, + { + "time_epoch": 1732435200, + "time": "2024-11-24 09:00", + "temp_c": 10.1, + "temp_f": 50.1, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 13.6, + "wind_kph": 22, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.98, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 7, + "feelslike_c": 7.3, + "feelslike_f": 45.1, + "windchill_c": 7.3, + "windchill_f": 45.1, + "heatindex_c": 10.1, + "heatindex_f": 50.1, + "dewpoint_c": 6.4, + "dewpoint_f": 43.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.5, + "gust_kph": 39.5, + "uv": 0 + }, + { + "time_epoch": 1732438800, + "time": "2024-11-24 10:00", + "temp_c": 11.4, + "temp_f": 52.5, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 14.5, + "wind_kph": 23.4, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.97, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 74, + "cloud": 5, + "feelslike_c": 8.9, + "feelslike_f": 47.9, + "windchill_c": 8.9, + "windchill_f": 47.9, + "heatindex_c": 11.4, + "heatindex_f": 52.5, + "dewpoint_c": 7, + "dewpoint_f": 44.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.2, + "gust_kph": 37.3, + "uv": 0.4 + }, + { + "time_epoch": 1732442400, + "time": "2024-11-24 11:00", + "temp_c": 13.2, + "temp_f": 55.7, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1015, + "pressure_in": 29.96, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 70, + "cloud": 4, + "feelslike_c": 11, + "feelslike_f": 51.8, + "windchill_c": 11, + "windchill_f": 51.8, + "heatindex_c": 13.2, + "heatindex_f": 55.7, + "dewpoint_c": 7.8, + "dewpoint_f": 46, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.5, + "gust_kph": 36.3, + "uv": 0.8 + }, + { + "time_epoch": 1732446000, + "time": "2024-11-24 12:00", + "temp_c": 15, + "temp_f": 58.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.1, + "wind_kph": 25.9, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1014, + "pressure_in": 29.95, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 4, + "feelslike_c": 13.3, + "feelslike_f": 55.9, + "windchill_c": 13.3, + "windchill_f": 55.9, + "heatindex_c": 15, + "heatindex_f": 58.9, + "dewpoint_c": 8.4, + "dewpoint_f": 47.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.9, + "gust_kph": 35.2, + "uv": 1.3 + }, + { + "time_epoch": 1732449600, + "time": "2024-11-24 13:00", + "temp_c": 16.4, + "temp_f": 61.6, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.1, + "wind_kph": 25.9, + "wind_degree": 142, + "wind_dir": "SE", + "pressure_mb": 1013, + "pressure_in": 29.91, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 60, + "cloud": 5, + "feelslike_c": 16.4, + "feelslike_f": 61.6, + "windchill_c": 16.4, + "windchill_f": 61.6, + "heatindex_c": 16.4, + "heatindex_f": 61.6, + "dewpoint_c": 8.8, + "dewpoint_f": 47.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.6, + "gust_kph": 34.7, + "uv": 1.4 + }, + { + "time_epoch": 1732453200, + "time": "2024-11-24 14:00", + "temp_c": 17.2, + "temp_f": 62.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.3, + "wind_kph": 26.3, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1012, + "pressure_in": 29.89, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 4, + "feelslike_c": 17.2, + "feelslike_f": 62.9, + "windchill_c": 17.2, + "windchill_f": 62.9, + "heatindex_c": 17.2, + "heatindex_f": 62.9, + "dewpoint_c": 9, + "dewpoint_f": 48.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.9, + "gust_kph": 36.8, + "uv": 1.3 + }, + { + "time_epoch": 1732456800, + "time": "2024-11-24 15:00", + "temp_c": 17.2, + "temp_f": 63, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 16.3, + "wind_kph": 26.3, + "wind_degree": 145, + "wind_dir": "SE", + "pressure_mb": 1012, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 1, + "feelslike_c": 17.2, + "feelslike_f": 63, + "windchill_c": 17.2, + "windchill_f": 63, + "heatindex_c": 17.2, + "heatindex_f": 63, + "dewpoint_c": 9.2, + "dewpoint_f": 48.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25, + "gust_kph": 40.2, + "uv": 0.8 + }, + { + "time_epoch": 1732460400, + "time": "2024-11-24 16:00", + "temp_c": 16.6, + "temp_f": 61.9, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 147, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 61, + "cloud": 3, + "feelslike_c": 16.6, + "feelslike_f": 61.9, + "windchill_c": 16.6, + "windchill_f": 61.9, + "heatindex_c": 16.6, + "heatindex_f": 61.9, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 25.9, + "gust_kph": 41.7, + "uv": 0.4 + }, + { + "time_epoch": 1732464000, + "time": "2024-11-24 17:00", + "temp_c": 15.7, + "temp_f": 60.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 15.4, + "wind_kph": 24.8, + "wind_degree": 147, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 22, + "feelslike_c": 15.7, + "feelslike_f": 60.3, + "windchill_c": 15.7, + "windchill_f": 60.3, + "heatindex_c": 15.7, + "heatindex_f": 60.3, + "dewpoint_c": 9.1, + "dewpoint_f": 48.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 27, + "gust_kph": 43.5, + "uv": 0 + }, + { + "time_epoch": 1732467600, + "time": "2024-11-24 18:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 15.4, + "wind_kph": 24.8, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 66, + "cloud": 15, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 9.1, + "dewpoint_f": 48.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 27.8, + "gust_kph": 44.8, + "uv": 0 + }, + { + "time_epoch": 1732471200, + "time": "2024-11-24 19:00", + "temp_c": 15.2, + "temp_f": 59.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 15.7, + "wind_kph": 25.2, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 47, + "feelslike_c": 15.2, + "feelslike_f": 59.4, + "windchill_c": 15.2, + "windchill_f": 59.4, + "heatindex_c": 15.2, + "heatindex_f": 59.4, + "dewpoint_c": 9.1, + "dewpoint_f": 48.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 28.4, + "gust_kph": 45.7, + "uv": 0 + }, + { + "time_epoch": 1732474800, + "time": "2024-11-24 20:00", + "temp_c": 15.2, + "temp_f": 59.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 14.8, + "wind_kph": 23.8, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1012, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 56, + "feelslike_c": 15.2, + "feelslike_f": 59.4, + "windchill_c": 15.2, + "windchill_f": 59.4, + "heatindex_c": 15.2, + "heatindex_f": 59.4, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.5, + "gust_kph": 42.6, + "uv": 0 + }, + { + "time_epoch": 1732478400, + "time": "2024-11-24 21:00", + "temp_c": 15.4, + "temp_f": 59.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 14.3, + "wind_kph": 23, + "wind_degree": 151, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 49, + "feelslike_c": 15.4, + "feelslike_f": 59.7, + "windchill_c": 15.4, + "windchill_f": 59.7, + "heatindex_c": 15.4, + "heatindex_f": 59.7, + "dewpoint_c": 9.3, + "dewpoint_f": 48.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.7, + "gust_kph": 39.8, + "uv": 0 + }, + { + "time_epoch": 1732482000, + "time": "2024-11-24 22:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 155, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 67, + "cloud": 47, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 9.2, + "dewpoint_f": 48.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.7, + "gust_kph": 36.5, + "uv": 0 + }, + { + "time_epoch": 1732485600, + "time": "2024-11-24 23:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 151, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.87, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 65, + "cloud": 66, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.8, + "dewpoint_f": 47.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23.8, + "gust_kph": 38.3, + "uv": 0 + } + ] + }, + { + "date": "2024-11-25", + "date_epoch": 1732492800, + "day": { + "maxtemp_c": 15.5, + "maxtemp_f": 59.8, + "mintemp_c": 9.5, + "mintemp_f": 49.1, + "avgtemp_c": 12.7, + "avgtemp_f": 54.8, + "maxwind_mph": 15, + "maxwind_kph": 24.1, + "totalprecip_mm": 7.56, + "totalprecip_in": 0.3, + "totalsnow_cm": 0, + "avgvis_km": 8.6, + "avgvis_miles": 5, + "avghumidity": 80, + "daily_will_it_rain": 1, + "daily_chance_of_rain": 89, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Moderate rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/302.png", + "code": 1189 + }, + "uv": 0 + }, + "astro": { + "sunrise": "08:13 AM", + "sunset": "05:26 PM", + "moonrise": "02:17 AM", + "moonset": "02:46 PM", + "moon_phase": "Waning Crescent", + "moon_illumination": 32, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732489200, + "time": "2024-11-25 00:00", + "temp_c": 15.5, + "temp_f": 59.8, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 13.4, + "wind_kph": 21.6, + "wind_degree": 153, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.85, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 63, + "cloud": 66, + "feelslike_c": 15.5, + "feelslike_f": 59.8, + "windchill_c": 15.5, + "windchill_f": 59.8, + "heatindex_c": 15.5, + "heatindex_f": 59.8, + "dewpoint_c": 8.5, + "dewpoint_f": 47.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 24.7, + "gust_kph": 39.7, + "uv": 0 + }, + { + "time_epoch": 1732492800, + "time": "2024-11-25 01:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1011, + "pressure_in": 29.86, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 64, + "cloud": 56, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.5, + "dewpoint_f": 47.3, + "will_it_rain": 0, + "chance_of_rain": 69, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.1, + "gust_kph": 42.1, + "uv": 0 + }, + { + "time_epoch": 1732496400, + "time": "2024-11-25 02:00", + "temp_c": 15.3, + "temp_f": 59.5, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 14.5, + "wind_kph": 23.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1010, + "pressure_in": 29.82, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 62, + "cloud": 67, + "feelslike_c": 15.3, + "feelslike_f": 59.5, + "windchill_c": 15.3, + "windchill_f": 59.5, + "heatindex_c": 15.3, + "heatindex_f": 59.5, + "dewpoint_c": 8.1, + "dewpoint_f": 46.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.6, + "gust_kph": 42.7, + "uv": 0 + }, + { + "time_epoch": 1732500000, + "time": "2024-11-25 03:00", + "temp_c": 15.5, + "temp_f": 60, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 154, + "wind_dir": "SSE", + "pressure_mb": 1010, + "pressure_in": 29.81, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 82, + "feelslike_c": 15.5, + "feelslike_f": 60, + "windchill_c": 15.5, + "windchill_f": 60, + "heatindex_c": 15.5, + "heatindex_f": 60, + "dewpoint_c": 7.5, + "dewpoint_f": 45.4, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.2, + "gust_kph": 42.1, + "uv": 0 + }, + { + "time_epoch": 1732503600, + "time": "2024-11-25 04:00", + "temp_c": 16.4, + "temp_f": 61.6, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 15, + "wind_kph": 24.1, + "wind_degree": 160, + "wind_dir": "SSE", + "pressure_mb": 1009, + "pressure_in": 29.79, + "precip_mm": 0.01, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 85, + "feelslike_c": 16.4, + "feelslike_f": 61.6, + "windchill_c": 16.4, + "windchill_f": 61.6, + "heatindex_c": 16.4, + "heatindex_f": 61.6, + "dewpoint_c": 7, + "dewpoint_f": 44.7, + "will_it_rain": 0, + "chance_of_rain": 70, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 26.5, + "gust_kph": 42.7, + "uv": 0 + }, + { + "time_epoch": 1732507200, + "time": "2024-11-25 05:00", + "temp_c": 15.5, + "temp_f": 59.9, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 154, + "wind_dir": "SSE", + "pressure_mb": 1009, + "pressure_in": 29.8, + "precip_mm": 0.01, + "precip_in": 0, + "snow_cm": 0, + "humidity": 59, + "cloud": 86, + "feelslike_c": 15.5, + "feelslike_f": 59.9, + "windchill_c": 15.5, + "windchill_f": 59.9, + "heatindex_c": 15.5, + "heatindex_f": 59.9, + "dewpoint_c": 7.5, + "dewpoint_f": 45.5, + "will_it_rain": 0, + "chance_of_rain": 67, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 21.5, + "gust_kph": 34.5, + "uv": 0 + }, + { + "time_epoch": 1732510800, + "time": "2024-11-25 06:00", + "temp_c": 15.5, + "temp_f": 59.8, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 8.5, + "wind_kph": 13.7, + "wind_degree": 181, + "wind_dir": "S", + "pressure_mb": 1010, + "pressure_in": 29.83, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 60, + "cloud": 85, + "feelslike_c": 15.5, + "feelslike_f": 59.8, + "windchill_c": 15.5, + "windchill_f": 59.8, + "heatindex_c": 15.5, + "heatindex_f": 59.8, + "dewpoint_c": 7.8, + "dewpoint_f": 46.1, + "will_it_rain": 0, + "chance_of_rain": 64, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.4, + "gust_kph": 24.8, + "uv": 0 + }, + { + "time_epoch": 1732514400, + "time": "2024-11-25 07:00", + "temp_c": 15.1, + "temp_f": 59.1, + "is_day": 0, + "condition": { + "text": "Patchy light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/night/263.png", + "code": 1150 + }, + "wind_mph": 7.2, + "wind_kph": 11.5, + "wind_degree": 238, + "wind_dir": "WSW", + "pressure_mb": 1011, + "pressure_in": 29.84, + "precip_mm": 0.32, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 73, + "cloud": 71, + "feelslike_c": 15.1, + "feelslike_f": 59.1, + "windchill_c": 15.1, + "windchill_f": 59.1, + "heatindex_c": 15.1, + "heatindex_f": 59.1, + "dewpoint_c": 10.2, + "dewpoint_f": 50.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 5, + "vis_miles": 3, + "gust_mph": 12.5, + "gust_kph": 20.1, + "uv": 0 + }, + { + "time_epoch": 1732518000, + "time": "2024-11-25 08:00", + "temp_c": 13.6, + "temp_f": 56.5, + "is_day": 0, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/night/296.png", + "code": 1183 + }, + "wind_mph": 8.5, + "wind_kph": 13.7, + "wind_degree": 301, + "wind_dir": "WNW", + "pressure_mb": 1012, + "pressure_in": 29.88, + "precip_mm": 0.84, + "precip_in": 0.03, + "snow_cm": 0, + "humidity": 91, + "cloud": 100, + "feelslike_c": 12.5, + "feelslike_f": 54.5, + "windchill_c": 12.5, + "windchill_f": 54.5, + "heatindex_c": 13.6, + "heatindex_f": 56.5, + "dewpoint_c": 12.2, + "dewpoint_f": 53.9, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 12.6, + "gust_kph": 20.3, + "uv": 0 + }, + { + "time_epoch": 1732521600, + "time": "2024-11-25 09:00", + "temp_c": 12.4, + "temp_f": 54.3, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 316, + "wind_dir": "NW", + "pressure_mb": 1013, + "pressure_in": 29.92, + "precip_mm": 0.73, + "precip_in": 0.03, + "snow_cm": 0, + "humidity": 92, + "cloud": 100, + "feelslike_c": 11.4, + "feelslike_f": 52.5, + "windchill_c": 11.4, + "windchill_f": 52.5, + "heatindex_c": 12.4, + "heatindex_f": 54.3, + "dewpoint_c": 11.1, + "dewpoint_f": 52.1, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 9.8, + "gust_kph": 15.7, + "uv": 0 + }, + { + "time_epoch": 1732525200, + "time": "2024-11-25 10:00", + "temp_c": 12.4, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 290, + "wind_dir": "WNW", + "pressure_mb": 1014, + "pressure_in": 29.95, + "precip_mm": 0.89, + "precip_in": 0.04, + "snow_cm": 0, + "humidity": 92, + "cloud": 100, + "feelslike_c": 11.8, + "feelslike_f": 53.3, + "windchill_c": 11.8, + "windchill_f": 53.3, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 11.2, + "dewpoint_f": 52.1, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 7.5, + "gust_kph": 12.1, + "uv": 0 + }, + { + "time_epoch": 1732528800, + "time": "2024-11-25 11:00", + "temp_c": 12.5, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 6, + "wind_kph": 9.7, + "wind_degree": 311, + "wind_dir": "NW", + "pressure_mb": 1015, + "pressure_in": 29.96, + "precip_mm": 1.36, + "precip_in": 0.05, + "snow_cm": 0, + "humidity": 93, + "cloud": 100, + "feelslike_c": 11.6, + "feelslike_f": 52.9, + "windchill_c": 11.6, + "windchill_f": 52.9, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 11.3, + "dewpoint_f": 52.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 8.6, + "gust_kph": 13.8, + "uv": 0.1 + }, + { + "time_epoch": 1732532400, + "time": "2024-11-25 12:00", + "temp_c": 11.9, + "temp_f": 53.4, + "is_day": 1, + "condition": { + "text": "Light rain", + "icon": "//cdn.weatherapi.com/weather/64x64/day/296.png", + "code": 1183 + }, + "wind_mph": 8.3, + "wind_kph": 13.3, + "wind_degree": 308, + "wind_dir": "NW", + "pressure_mb": 1016, + "pressure_in": 29.99, + "precip_mm": 2.14, + "precip_in": 0.08, + "snow_cm": 0, + "humidity": 93, + "cloud": 100, + "feelslike_c": 10.4, + "feelslike_f": 50.8, + "windchill_c": 10.4, + "windchill_f": 50.8, + "heatindex_c": 11.9, + "heatindex_f": 53.4, + "dewpoint_c": 10.8, + "dewpoint_f": 51.4, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 9, + "vis_miles": 5, + "gust_mph": 11.6, + "gust_kph": 18.6, + "uv": 0.1 + }, + { + "time_epoch": 1732536000, + "time": "2024-11-25 13:00", + "temp_c": 11.3, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Light rain shower", + "icon": "//cdn.weatherapi.com/weather/64x64/day/353.png", + "code": 1240 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 302, + "wind_dir": "WNW", + "pressure_mb": 1016, + "pressure_in": 30.01, + "precip_mm": 0.24, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 89, + "cloud": 100, + "feelslike_c": 10.1, + "feelslike_f": 50.2, + "windchill_c": 10.1, + "windchill_f": 50.2, + "heatindex_c": 11.3, + "heatindex_f": 52.4, + "dewpoint_c": 9.6, + "dewpoint_f": 49.3, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.5, + "gust_kph": 15.2, + "uv": 0.1 + }, + { + "time_epoch": 1732539600, + "time": "2024-11-25 14:00", + "temp_c": 11.3, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 283, + "wind_dir": "WNW", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0.37, + "precip_in": 0.01, + "snow_cm": 0, + "humidity": 89, + "cloud": 100, + "feelslike_c": 10.4, + "feelslike_f": 50.7, + "windchill_c": 10.4, + "windchill_f": 50.7, + "heatindex_c": 11.3, + "heatindex_f": 52.4, + "dewpoint_c": 9.5, + "dewpoint_f": 49.2, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 8, + "gust_kph": 12.9, + "uv": 0.1 + }, + { + "time_epoch": 1732543200, + "time": "2024-11-25 15:00", + "temp_c": 11.3, + "temp_f": 52.3, + "is_day": 1, + "condition": { + "text": "Light drizzle", + "icon": "//cdn.weatherapi.com/weather/64x64/day/266.png", + "code": 1153 + }, + "wind_mph": 7.4, + "wind_kph": 11.9, + "wind_degree": 269, + "wind_dir": "W", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0.45, + "precip_in": 0.02, + "snow_cm": 0, + "humidity": 88, + "cloud": 100, + "feelslike_c": 9.9, + "feelslike_f": 49.7, + "windchill_c": 9.9, + "windchill_f": 49.7, + "heatindex_c": 11.3, + "heatindex_f": 52.3, + "dewpoint_c": 9.4, + "dewpoint_f": 49, + "will_it_rain": 1, + "chance_of_rain": 100, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 2, + "vis_miles": 1, + "gust_mph": 11, + "gust_kph": 17.6, + "uv": 0.1 + }, + { + "time_epoch": 1732546800, + "time": "2024-11-25 16:00", + "temp_c": 11.4, + "temp_f": 52.5, + "is_day": 1, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/119.png", + "code": 1006 + }, + "wind_mph": 3.6, + "wind_kph": 5.8, + "wind_degree": 244, + "wind_dir": "WSW", + "pressure_mb": 1018, + "pressure_in": 30.07, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 82, + "cloud": 65, + "feelslike_c": 11.2, + "feelslike_f": 52.1, + "windchill_c": 11.2, + "windchill_f": 52.1, + "heatindex_c": 11.4, + "heatindex_f": 52.5, + "dewpoint_c": 8.4, + "dewpoint_f": 47.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 5.6, + "gust_kph": 9, + "uv": 0.1 + }, + { + "time_epoch": 1732550400, + "time": "2024-11-25 17:00", + "temp_c": 11.4, + "temp_f": 52.4, + "is_day": 1, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/day/176.png", + "code": 1063 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 191, + "wind_dir": "SSW", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0.02, + "precip_in": 0, + "snow_cm": 0, + "humidity": 82, + "cloud": 58, + "feelslike_c": 10.5, + "feelslike_f": 51, + "windchill_c": 10.5, + "windchill_f": 51, + "heatindex_c": 11.4, + "heatindex_f": 52.4, + "dewpoint_c": 8.4, + "dewpoint_f": 47, + "will_it_rain": 1, + "chance_of_rain": 89, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 8.4, + "gust_kph": 13.5, + "uv": 0 + }, + { + "time_epoch": 1732554000, + "time": "2024-11-25 18:00", + "temp_c": 11.1, + "temp_f": 51.9, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 207, + "wind_dir": "SSW", + "pressure_mb": 1020, + "pressure_in": 30.11, + "precip_mm": 0.02, + "precip_in": 0, + "snow_cm": 0, + "humidity": 85, + "cloud": 89, + "feelslike_c": 10.1, + "feelslike_f": 50.1, + "windchill_c": 10.1, + "windchill_f": 50.1, + "heatindex_c": 11.1, + "heatindex_f": 51.9, + "dewpoint_c": 8.6, + "dewpoint_f": 47.4, + "will_it_rain": 1, + "chance_of_rain": 76, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.4, + "gust_kph": 15.2, + "uv": 0 + }, + { + "time_epoch": 1732557600, + "time": "2024-11-25 19:00", + "temp_c": 10.6, + "temp_f": 51.1, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 6, + "wind_kph": 9.7, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1020, + "pressure_in": 30.13, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 88, + "cloud": 88, + "feelslike_c": 9.4, + "feelslike_f": 48.9, + "windchill_c": 9.4, + "windchill_f": 48.9, + "heatindex_c": 10.6, + "heatindex_f": 51.1, + "dewpoint_c": 8.8, + "dewpoint_f": 47.8, + "will_it_rain": 1, + "chance_of_rain": 76, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.6, + "gust_kph": 17.1, + "uv": 0 + }, + { + "time_epoch": 1732561200, + "time": "2024-11-25 20:00", + "temp_c": 10.1, + "temp_f": 50.2, + "is_day": 0, + "condition": { + "text": "Patchy rain nearby", + "icon": "//cdn.weatherapi.com/weather/64x64/night/176.png", + "code": 1063 + }, + "wind_mph": 5.6, + "wind_kph": 9, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1021, + "pressure_in": 30.16, + "precip_mm": 0.04, + "precip_in": 0, + "snow_cm": 0, + "humidity": 92, + "cloud": 87, + "feelslike_c": 8.9, + "feelslike_f": 48.1, + "windchill_c": 8.9, + "windchill_f": 48.1, + "heatindex_c": 10.1, + "heatindex_f": 50.2, + "dewpoint_c": 8.8, + "dewpoint_f": 47.9, + "will_it_rain": 1, + "chance_of_rain": 75, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.5, + "gust_kph": 16.9, + "uv": 0 + }, + { + "time_epoch": 1732564800, + "time": "2024-11-25 21:00", + "temp_c": 9.8, + "temp_f": 49.6, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1022, + "pressure_in": 30.17, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 18, + "feelslike_c": 8.7, + "feelslike_f": 47.7, + "windchill_c": 8.7, + "windchill_f": 47.7, + "heatindex_c": 9.8, + "heatindex_f": 49.6, + "dewpoint_c": 8.7, + "dewpoint_f": 47.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.2, + "gust_kph": 16.3, + "uv": 0 + }, + { + "time_epoch": 1732568400, + "time": "2024-11-25 22:00", + "temp_c": 9.6, + "temp_f": 49.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 5.1, + "wind_kph": 8.3, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1022, + "pressure_in": 30.19, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 24, + "feelslike_c": 8.5, + "feelslike_f": 47.4, + "windchill_c": 8.5, + "windchill_f": 47.4, + "heatindex_c": 9.6, + "heatindex_f": 49.4, + "dewpoint_c": 8.6, + "dewpoint_f": 47.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 10.2, + "gust_kph": 16.5, + "uv": 0 + }, + { + "time_epoch": 1732572000, + "time": "2024-11-25 23:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 4.9, + "wind_kph": 7.9, + "wind_degree": 198, + "wind_dir": "SSW", + "pressure_mb": 1023, + "pressure_in": 30.2, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 93, + "cloud": 26, + "feelslike_c": 8.4, + "feelslike_f": 47.2, + "windchill_c": 8.4, + "windchill_f": 47.2, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 8.5, + "dewpoint_f": 47.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 9.8, + "gust_kph": 15.8, + "uv": 0 + } + ] + }, + { + "date": "2024-11-23", + "date_epoch": 1732320000, + "day": { + "maxtemp_c": 13.1, + "maxtemp_f": 55.7, + "mintemp_c": 4, + "mintemp_f": 39.3, + "avgtemp_c": 8.1, + "avgtemp_f": 46.6, + "maxwind_mph": 13, + "maxwind_kph": 20.9, + "totalprecip_mm": 0, + "totalprecip_in": 0, + "totalsnow_cm": 0, + "avgvis_km": 10, + "avgvis_miles": 6, + "avghumidity": 69, + "daily_will_it_rain": 0, + "daily_chance_of_rain": 0, + "daily_will_it_snow": 0, + "daily_chance_of_snow": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/116.png", + "code": 1003 + }, + "uv": 0.3 + }, + "astro": { + "sunrise": "08:10 AM", + "sunset": "05:27 PM", + "moonrise": "12:08 AM", + "moonset": "02:13 PM", + "moon_phase": "Last Quarter", + "moon_illumination": 51, + "is_moon_up": 0, + "is_sun_up": 0 + }, + "hour": [ + { + "time_epoch": 1732316400, + "time": "2024-11-23 00:00", + "temp_c": 5.6, + "temp_f": 42, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 6.7, + "wind_kph": 10.8, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1022, + "pressure_in": 30.19, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 81, + "cloud": 17, + "feelslike_c": 3.2, + "feelslike_f": 37.7, + "windchill_c": 3.2, + "windchill_f": 37.7, + "heatindex_c": 5.6, + "heatindex_f": 42, + "dewpoint_c": 2.6, + "dewpoint_f": 36.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 13.7, + "gust_kph": 22, + "uv": 0 + }, + { + "time_epoch": 1732320000, + "time": "2024-11-23 01:00", + "temp_c": 5.8, + "temp_f": 42.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 6.9, + "wind_kph": 11.2, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1022, + "pressure_in": 30.17, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 47, + "feelslike_c": 3.3, + "feelslike_f": 38, + "windchill_c": 3.3, + "windchill_f": 38, + "heatindex_c": 5.8, + "heatindex_f": 42.4, + "dewpoint_c": 2.5, + "dewpoint_f": 36.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 13.4, + "gust_kph": 21.6, + "uv": 0 + }, + { + "time_epoch": 1732323600, + "time": "2024-11-23 02:00", + "temp_c": 5.6, + "temp_f": 42.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 8.3, + "wind_kph": 13.3, + "wind_degree": 137, + "wind_dir": "SE", + "pressure_mb": 1021, + "pressure_in": 30.14, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 56, + "feelslike_c": 2.8, + "feelslike_f": 37, + "windchill_c": 2.8, + "windchill_f": 37, + "heatindex_c": 5.6, + "heatindex_f": 42.1, + "dewpoint_c": 2.3, + "dewpoint_f": 36.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.3, + "gust_kph": 24.7, + "uv": 0 + }, + { + "time_epoch": 1732327200, + "time": "2024-11-23 03:00", + "temp_c": 5.1, + "temp_f": 41.3, + "is_day": 0, + "condition": { + "text": "Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/119.png", + "code": 1006 + }, + "wind_mph": 9.8, + "wind_kph": 15.8, + "wind_degree": 133, + "wind_dir": "SE", + "pressure_mb": 1020, + "pressure_in": 30.13, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 86, + "feelslike_c": 1.8, + "feelslike_f": 35.3, + "windchill_c": 1.8, + "windchill_f": 35.3, + "heatindex_c": 5.2, + "heatindex_f": 41.3, + "dewpoint_c": 1.9, + "dewpoint_f": 35.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.6, + "gust_kph": 28.4, + "uv": 0 + }, + { + "time_epoch": 1732330800, + "time": "2024-11-23 04:00", + "temp_c": 4.8, + "temp_f": 40.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 10.5, + "wind_kph": 16.9, + "wind_degree": 130, + "wind_dir": "SE", + "pressure_mb": 1020, + "pressure_in": 30.12, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 79, + "cloud": 44, + "feelslike_c": 1.3, + "feelslike_f": 34.3, + "windchill_c": 1.3, + "windchill_f": 34.3, + "heatindex_c": 4.9, + "heatindex_f": 40.7, + "dewpoint_c": 1.5, + "dewpoint_f": 34.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 18.1, + "gust_kph": 29.1, + "uv": 0 + }, + { + "time_epoch": 1732334400, + "time": "2024-11-23 05:00", + "temp_c": 4.3, + "temp_f": 39.7, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11, + "wind_kph": 17.6, + "wind_degree": 130, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.1, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 46, + "feelslike_c": 0.5, + "feelslike_f": 32.8, + "windchill_c": 0.5, + "windchill_f": 32.8, + "heatindex_c": 4.3, + "heatindex_f": 39.7, + "dewpoint_c": 1.2, + "dewpoint_f": 34.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.1, + "gust_kph": 30.8, + "uv": 0 + }, + { + "time_epoch": 1732338000, + "time": "2024-11-23 06:00", + "temp_c": 4, + "temp_f": 39.3, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 80, + "cloud": 39, + "feelslike_c": 0.1, + "feelslike_f": 32.2, + "windchill_c": 0.1, + "windchill_f": 32.2, + "heatindex_c": 4, + "heatindex_f": 39.3, + "dewpoint_c": 0.9, + "dewpoint_f": 33.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.8, + "gust_kph": 31.8, + "uv": 0 + }, + { + "time_epoch": 1732341600, + "time": "2024-11-23 07:00", + "temp_c": 4, + "temp_f": 39.3, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 138, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 78, + "cloud": 26, + "feelslike_c": 0.1, + "feelslike_f": 32.2, + "windchill_c": 0.1, + "windchill_f": 32.2, + "heatindex_c": 4, + "heatindex_f": 39.3, + "dewpoint_c": 0.6, + "dewpoint_f": 33, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19.9, + "gust_kph": 32, + "uv": 0 + }, + { + "time_epoch": 1732345200, + "time": "2024-11-23 08:00", + "temp_c": 4.1, + "temp_f": 39.4, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 10.5, + "wind_kph": 16.9, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 75, + "cloud": 7, + "feelslike_c": 0.4, + "feelslike_f": 32.6, + "windchill_c": 0.4, + "windchill_f": 32.6, + "heatindex_c": 4.1, + "heatindex_f": 39.4, + "dewpoint_c": 0.1, + "dewpoint_f": 32.1, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 18.8, + "gust_kph": 30.2, + "uv": 0 + }, + { + "time_epoch": 1732348800, + "time": "2024-11-23 09:00", + "temp_c": 4.6, + "temp_f": 40.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.7, + "wind_kph": 17.3, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1019, + "pressure_in": 30.09, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 71, + "cloud": 13, + "feelslike_c": 1, + "feelslike_f": 33.7, + "windchill_c": 1, + "windchill_f": 33.7, + "heatindex_c": 4.6, + "heatindex_f": 40.4, + "dewpoint_c": -0.2, + "dewpoint_f": 31.7, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 19, + "gust_kph": 30.5, + "uv": 0 + }, + { + "time_epoch": 1732352400, + "time": "2024-11-23 10:00", + "temp_c": 6.6, + "temp_f": 43.9, + "is_day": 1, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/day/116.png", + "code": 1003 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 146, + "wind_dir": "SSE", + "pressure_mb": 1019, + "pressure_in": 30.08, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 63, + "cloud": 49, + "feelslike_c": 3.4, + "feelslike_f": 38, + "windchill_c": 3.4, + "windchill_f": 38, + "heatindex_c": 6.6, + "heatindex_f": 43.9, + "dewpoint_c": 0.2, + "dewpoint_f": 32.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.5, + "gust_kph": 28.2, + "uv": 0.4 + }, + { + "time_epoch": 1732356000, + "time": "2024-11-23 11:00", + "temp_c": 7.4, + "temp_f": 45.3, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.06, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 0, + "feelslike_c": 6, + "feelslike_f": 42.7, + "windchill_c": 6, + "windchill_f": 42.7, + "heatindex_c": 8.7, + "heatindex_f": 47.7, + "dewpoint_c": 1.3, + "dewpoint_f": 34.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 15.9, + "gust_kph": 25.5, + "uv": 0.9 + }, + { + "time_epoch": 1732359600, + "time": "2024-11-23 12:00", + "temp_c": 10.4, + "temp_f": 50.8, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11, + "wind_kph": 17.6, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1018, + "pressure_in": 30.07, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 56, + "cloud": 21, + "feelslike_c": 8.2, + "feelslike_f": 46.7, + "windchill_c": 8.2, + "windchill_f": 46.7, + "heatindex_c": 10.5, + "heatindex_f": 50.8, + "dewpoint_c": 2.2, + "dewpoint_f": 35.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14.7, + "gust_kph": 23.6, + "uv": 1.3 + }, + { + "time_epoch": 1732363200, + "time": "2024-11-23 13:00", + "temp_c": 12.3, + "temp_f": 54.2, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.04, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 52, + "cloud": 22, + "feelslike_c": 10.5, + "feelslike_f": 50.8, + "windchill_c": 10.5, + "windchill_f": 50.8, + "heatindex_c": 12.3, + "heatindex_f": 54.2, + "dewpoint_c": 2.8, + "dewpoint_f": 37, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14.9, + "gust_kph": 23.9, + "uv": 1.6 + }, + { + "time_epoch": 1732366800, + "time": "2024-11-23 14:00", + "temp_c": 13, + "temp_f": 55.4, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.3, + "wind_kph": 16.6, + "wind_degree": 149, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 12, + "feelslike_c": 11.5, + "feelslike_f": 52.7, + "windchill_c": 11.5, + "windchill_f": 52.7, + "heatindex_c": 13, + "heatindex_f": 55.4, + "dewpoint_c": 3.8, + "dewpoint_f": 38.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 14, + "gust_kph": 22.6, + "uv": 1.4 + }, + { + "time_epoch": 1732370400, + "time": "2024-11-23 15:00", + "temp_c": 13.1, + "temp_f": 55.7, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.4, + "wind_kph": 18.4, + "wind_degree": 150, + "wind_dir": "SSE", + "pressure_mb": 1016, + "pressure_in": 30.01, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 54, + "cloud": 22, + "feelslike_c": 11.5, + "feelslike_f": 52.7, + "windchill_c": 11.5, + "windchill_f": 52.7, + "heatindex_c": 13.2, + "heatindex_f": 55.7, + "dewpoint_c": 4.2, + "dewpoint_f": 39.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 16.8, + "gust_kph": 27.1, + "uv": 0.9 + }, + { + "time_epoch": 1732374000, + "time": "2024-11-23 16:00", + "temp_c": 12.5, + "temp_f": 54.4, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 10.7, + "wind_kph": 17.3, + "wind_degree": 148, + "wind_dir": "SSE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 57, + "cloud": 14, + "feelslike_c": 10.7, + "feelslike_f": 51.3, + "windchill_c": 10.7, + "windchill_f": 51.3, + "heatindex_c": 12.5, + "heatindex_f": 54.4, + "dewpoint_c": 4.1, + "dewpoint_f": 39.5, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 17.5, + "gust_kph": 28.1, + "uv": 0.4 + }, + { + "time_epoch": 1732377600, + "time": "2024-11-23 17:00", + "temp_c": 11.2, + "temp_f": 52.1, + "is_day": 1, + "condition": { + "text": "Sunny", + "icon": "//cdn.weatherapi.com/weather/64x64/day/113.png", + "code": 1000 + }, + "wind_mph": 11.2, + "wind_kph": 18, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 61, + "cloud": 22, + "feelslike_c": 9, + "feelslike_f": 48.2, + "windchill_c": 9, + "windchill_f": 48.2, + "heatindex_c": 11.2, + "heatindex_f": 52.1, + "dewpoint_c": 4, + "dewpoint_f": 39.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 20.2, + "gust_kph": 32.5, + "uv": 0 + }, + { + "time_epoch": 1732381200, + "time": "2024-11-23 18:00", + "temp_c": 10.2, + "temp_f": 50.4, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 11.6, + "wind_kph": 18.7, + "wind_degree": 141, + "wind_dir": "SE", + "pressure_mb": 1016, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 64, + "cloud": 47, + "feelslike_c": 7.8, + "feelslike_f": 46, + "windchill_c": 7.8, + "windchill_f": 46, + "heatindex_c": 10.2, + "heatindex_f": 50.4, + "dewpoint_c": 3.8, + "dewpoint_f": 38.9, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.2, + "gust_kph": 35.7, + "uv": 0 + }, + { + "time_epoch": 1732384800, + "time": "2024-11-23 19:00", + "temp_c": 10, + "temp_f": 50.1, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.3, + "wind_kph": 19.8, + "wind_degree": 144, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.02, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 66, + "cloud": 62, + "feelslike_c": 7.5, + "feelslike_f": 45.4, + "windchill_c": 7.5, + "windchill_f": 45.4, + "heatindex_c": 10, + "heatindex_f": 50.1, + "dewpoint_c": 4, + "dewpoint_f": 39.2, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.8, + "gust_kph": 36.8, + "uv": 0 + }, + { + "time_epoch": 1732388400, + "time": "2024-11-23 20:00", + "temp_c": 10, + "temp_f": 50, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 143, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 68, + "cloud": 57, + "feelslike_c": 7.3, + "feelslike_f": 45.2, + "windchill_c": 7.3, + "windchill_f": 45.2, + "heatindex_c": 10, + "heatindex_f": 50, + "dewpoint_c": 4.3, + "dewpoint_f": 39.8, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.6, + "gust_kph": 36.3, + "uv": 0 + }, + { + "time_epoch": 1732392000, + "time": "2024-11-23 21:00", + "temp_c": 9.7, + "temp_f": 49.5, + "is_day": 0, + "condition": { + "text": "Partly Cloudy ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/116.png", + "code": 1003 + }, + "wind_mph": 12.5, + "wind_kph": 20.2, + "wind_degree": 142, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 71, + "cloud": 46, + "feelslike_c": 7, + "feelslike_f": 44.6, + "windchill_c": 7, + "windchill_f": 44.6, + "heatindex_c": 9.7, + "heatindex_f": 49.5, + "dewpoint_c": 4.6, + "dewpoint_f": 40.3, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 22.3, + "gust_kph": 35.9, + "uv": 0 + }, + { + "time_epoch": 1732395600, + "time": "2024-11-23 22:00", + "temp_c": 9.5, + "temp_f": 49.1, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 13, + "wind_kph": 20.9, + "wind_degree": 139, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 73, + "cloud": 24, + "feelslike_c": 6.6, + "feelslike_f": 44, + "windchill_c": 6.6, + "windchill_f": 44, + "heatindex_c": 9.5, + "heatindex_f": 49.1, + "dewpoint_c": 5, + "dewpoint_f": 41, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23, + "gust_kph": 37, + "uv": 0 + }, + { + "time_epoch": 1732399200, + "time": "2024-11-23 23:00", + "temp_c": 9.3, + "temp_f": 48.8, + "is_day": 0, + "condition": { + "text": "Clear ", + "icon": "//cdn.weatherapi.com/weather/64x64/night/113.png", + "code": 1000 + }, + "wind_mph": 12.8, + "wind_kph": 20.5, + "wind_degree": 140, + "wind_dir": "SE", + "pressure_mb": 1017, + "pressure_in": 30.03, + "precip_mm": 0, + "precip_in": 0, + "snow_cm": 0, + "humidity": 76, + "cloud": 21, + "feelslike_c": 6.5, + "feelslike_f": 43.7, + "windchill_c": 6.5, + "windchill_f": 43.7, + "heatindex_c": 9.3, + "heatindex_f": 48.8, + "dewpoint_c": 5.3, + "dewpoint_f": 41.6, + "will_it_rain": 0, + "chance_of_rain": 0, + "will_it_snow": 0, + "chance_of_snow": 0, + "vis_km": 10, + "vis_miles": 6, + "gust_mph": 23, + "gust_kph": 37, + "uv": 0 + } + ] + } + ] + } +} \ No newline at end of file diff --git a/src/test/resources/WeatherAPI/wrong-apikey.json b/src/test/resources/WeatherAPI/wrong-apikey.json new file mode 100644 index 0000000..2e08784 --- /dev/null +++ b/src/test/resources/WeatherAPI/wrong-apikey.json @@ -0,0 +1,6 @@ +{ + "error": { + "code": 2008, + "message": "API key has been disabled." + } +} \ No newline at end of file