diff options
author | Nick White <git@njw.name> | 2021-02-05 15:23:17 +0000 |
---|---|---|
committer | Nick White <git@njw.name> | 2021-02-05 15:23:17 +0000 |
commit | fb840849c8ac587e3963feb41298314ab4efc90f (patch) | |
tree | d2f1116e260ad37566cb07941d150b0898be6228 | |
parent | b2bb70e0a13f459e6b50c075e1be44309ba48918 (diff) | |
download | weather-fb840849c8ac587e3963feb41298314ab4efc90f.tar.bz2 weather-fb840849c8ac587e3963feb41298314ab4efc90f.zip |
Simplify met office parsing, and fix a bug in night values being incorrect
-rw-r--r-- | weather.go | 26 |
1 files changed, 14 insertions, 12 deletions
@@ -175,6 +175,17 @@ func processBBC(b []byte) []Weather { return weather } +func parseMetWeather(wp WeatherParams) Weather { + var w Weather + + w.temperature = wp.T + w.precipitation = wp.PP + w.weathertype = wp.WT + w.windspeed = wp.WS * mpsToMphMultiplier + + return w +} + func processMet(b []byte) []Weather { var r MetResponse var weather []Weather @@ -185,29 +196,20 @@ func processMet(b []byte) []Weather { } for _, d := range r.BestFcst.Forecast.Location.Days { + w = parseMetWeather(d.DayValues.WeatherParameters) w.date = d.Date w.time = "Day " - w.temperature = d.DayValues.WeatherParameters.T - w.precipitation = d.DayValues.WeatherParameters.PP - w.weathertype = d.DayValues.WeatherParameters.WT - w.windspeed = d.DayValues.WeatherParameters.WS * mpsToMphMultiplier weather = append(weather, w) + w = parseMetWeather(d.NightValues.WeatherParameters) w.date = d.Date w.time = "Night " - w.temperature = d.DayValues.WeatherParameters.T - w.precipitation = d.DayValues.WeatherParameters.PP - w.weathertype = d.DayValues.WeatherParameters.WT - w.windspeed = d.DayValues.WeatherParameters.WS * mpsToMphMultiplier weather = append(weather, w) for _, t := range d.TimeSteps.TimeStep { + w = parseMetWeather(t.WeatherParameters) w.date = d.Date w.time = t.Time - w.temperature = t.WeatherParameters.T - w.precipitation = t.WeatherParameters.PP - w.weathertype = t.WeatherParameters.WT - w.windspeed = t.WeatherParameters.WS * mpsToMphMultiplier weather = append(weather, w) } } |