The changes necessary to upgrade the kiosk to use python3.7.
[kiosk.git] / weather_renderer.py
index 26c49ca8a442b39374c5106159127a0ca25c630f..fdd4fe125d3257a1303797b338d6981dcaca56fc 100644 (file)
@@ -4,7 +4,7 @@ import renderer
 import json
 import re
 import secrets
-import urllib2
+import urllib.request, urllib.error, urllib.parse
 import random
 
 class weather_renderer(renderer.debuggable_abstaining_renderer):
@@ -94,7 +94,7 @@ class weather_renderer(renderer.debuggable_abstaining_renderer):
         clear_count = 0
         total_snow = 0
         count = min(len(conditions), len(rain), len(snow))
-        for x in xrange(0, count):
+        for x in range(0, count):
             seen_rain = rain[x] > 0;
             seen_snow = snow[x] > 0;
             total_snow += snow[x]
@@ -148,7 +148,7 @@ class weather_renderer(renderer.debuggable_abstaining_renderer):
         lwind = ""
         lprecip = ""
         ltime = ""
-        for x in xrange(0, count):
+        for x in range(0, count):
             time = self.describe_time(x)
             current = ""
             chunks = 0
@@ -216,7 +216,7 @@ class weather_renderer(renderer.debuggable_abstaining_renderer):
             text_location = "Bellevue, WA"
             param = "id=5786882"
 
-        www = urllib2.urlopen('http://api.openweathermap.org/data/2.5/forecast?%s&APPID=%s&units=imperial' % (
+        www = urllib.request.urlopen('http://api.openweathermap.org/data/2.5/forecast?%s&APPID=%s&units=imperial' % (
             param, secrets.openweather_key))
         response = www.read()
         www.close()
@@ -255,7 +255,7 @@ class weather_renderer(renderer.debuggable_abstaining_renderer):
         conditions = {}
         rain = {}
         snow = {}
-        for x in xrange(0, count):
+        for x in range(0, count):
             data = parsed_json['list'][x]
             dt = data['dt_txt']  # 2019-10-07 18:00:00
             date = dt.split(" ")[0]
@@ -268,7 +268,7 @@ class weather_renderer(renderer.debuggable_abstaining_renderer):
             snow[date] = []
             ts[date] = 0
 
-        for x in xrange(0, count):
+        for x in range(0, count):
             data = parsed_json['list'][x]
             dt = data['dt_txt']  # 2019-10-07 18:00:00
             date = dt.split(" ")[0]
@@ -332,7 +332,7 @@ class weather_renderer(renderer.debuggable_abstaining_renderer):
             if (formatted_date in days_seen):
                 continue;
             days_seen[formatted_date] = True
-        num_days = len(days_seen.keys())
+        num_days = len(list(days_seen.keys()))
 
         days_seen = {}
         for date in sorted(highs.keys()):