projects
/
kiosk.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
More cleanup.
[kiosk.git]
/
weather_renderer.py
diff --git
a/weather_renderer.py
b/weather_renderer.py
index fbb3ed8170f873da0a3223088b8c60462a858c1a..f10f1ceb7d132f0e92965e8368b60d404f63409b 100644
(file)
--- a/
weather_renderer.py
+++ b/
weather_renderer.py
@@
-2,21
+2,22
@@
from datetime import datetime
import json
from datetime import datetime
import json
-import re
from typing import Dict, List
from typing import Dict, List
-import urllib.request, urllib.error, urllib.parse
+import urllib.request
+import urllib.error
+import urllib.parse
import file_writer
import renderer
import file_writer
import renderer
-import secrets
+import
kiosk_secrets as
secrets
import random
import random
-class weather_renderer(renderer.
debuggable_
abstaining_renderer):
+class weather_renderer(renderer.abstaining_renderer):
"""A renderer to fetch forecast from wunderground."""
def __init__(self, name_to_timeout_dict: Dict[str, int], file_prefix: str) -> None:
"""A renderer to fetch forecast from wunderground."""
def __init__(self, name_to_timeout_dict: Dict[str, int], file_prefix: str) -> None:
- super(
weather_renderer, self).__init__(name_to_timeout_dict, False
)
+ super(
).__init__(name_to_timeout_dict
)
self.file_prefix = file_prefix
def debug_prefix(self) -> str:
self.file_prefix = file_prefix
def debug_prefix(self) -> str:
@@
-65,6
+66,7
@@
class weather_renderer(renderer.debuggable_abstaining_renderer):
return f"{self.describe_magnitude(magnitude)} rain"
elif snow > 0:
return f"{self.describe_magnitude(magnitude)} snow"
return f"{self.describe_magnitude(magnitude)} rain"
elif snow > 0:
return f"{self.describe_magnitude(magnitude)} snow"
+ return "rain"
def fix_caps(self, s: str) -> str:
r = ""
def fix_caps(self, s: str) -> str:
r = ""
@@
-97,7
+99,7
@@
class weather_renderer(renderer.debuggable_abstaining_renderer):
seen_snow = False
cloud_count = 0
clear_count = 0
seen_snow = False
cloud_count = 0
clear_count = 0
- total_snow = 0
+ total_snow = 0
.0
count = min(len(conditions), len(rain), len(snow))
for x in range(0, count):
seen_rain = rain[x] > 0
count = min(len(conditions), len(rain), len(snow))
for x in range(0, count):
seen_rain = rain[x] > 0
@@
-216,7
+218,7
@@
class weather_renderer(renderer.debuggable_abstaining_renderer):
descr = self.fix_caps(descr)
return descr
descr = self.fix_caps(descr)
return descr
- def fetch_weather(self) ->
None
:
+ def fetch_weather(self) ->
bool
:
if self.file_prefix == "stevens":
text_location = "Stevens Pass, WA"
param = "lat=47.74&lon=-121.08"
if self.file_prefix == "stevens":
text_location = "Stevens Pass, WA"
param = "lat=47.74&lon=-121.08"
@@
-266,10
+268,10
@@
class weather_renderer(renderer.debuggable_abstaining_renderer):
ts = {}
highs = {}
lows = {}
ts = {}
highs = {}
lows = {}
- wind = {}
- conditions = {}
- rain = {}
- snow = {}
+ wind
: Dict[str, List[float]]
= {}
+ conditions
: Dict[str, List[str]]
= {}
+ rain
: Dict[str, List[float]]
= {}
+ snow
: Dict[str, List[float]]
= {}
for x in range(0, count):
data = parsed_json["list"][x]
dt = data["dt_txt"] # 2019-10-07 18:00:00
for x in range(0, count):
data = parsed_json["list"][x]
dt = data["dt_txt"] # 2019-10-07 18:00:00
@@
-376,7
+378,7
@@
class weather_renderer(renderer.debuggable_abstaining_renderer):
# Icon
f.write(
# Icon
f.write(
- ' <tr><td colspan=3 height=100><center><img src="/
icon
s/weather/%s" height=125></center></td></tr>\n'
+ ' <tr><td colspan=3 height=100><center><img src="/
kiosk/image
s/weather/%s" height=125></center></td></tr>\n'
% self.pick_icon(conditions[date], rain[date], snow[date])
)
% self.pick_icon(conditions[date], rain[date], snow[date])
)