More cleanup.
[python_utils.git] / smart_home / thermometers.py
index fe5eed18d28ef2851f9bbc6589ff528bfd2060f5..90199b9cdaa3dd0e2f09c9a7a521b0b03c8b7e5b 100644 (file)
@@ -1,13 +1,17 @@
 #!/usr/bin/env python3
 
+"""Code involving querying various smart home thermometers."""
+
 import logging
-from typing import Optional
 import urllib.request
+from typing import Optional
 
 logger = logging.getLogger()
 
 
 class ThermometerRegistry(object):
+    """A registry of thermometer hosts / names and how to talk with them."""
+
     def __init__(self):
         self.thermometers = {
             'house_outside': ('10.0.0.75', 'outside_temp'),
@@ -21,28 +25,28 @@ class ThermometerRegistry(object):
             'cabin_hottub': ('192.168.0.107', 'hottub_temp'),
         }
 
-    def read_temperature(
-            self, location: str, *, convert_to_fahrenheit=False
-    ) -> Optional[float]:
+    def read_temperature(self, location: str, *, convert_to_fahrenheit=False) -> Optional[float]:
         record = self.thermometers.get(location, None)
         if record is None:
             logger.error(
-                f'Location {location} is not known.  Valid locations are {self.thermometers.keys()}.'
+                'Location %s is not known.  Valid locations are %s.',
+                location,
+                self.thermometers.keys(),
             )
             return None
         url = f'http://{record[0]}/~pi/{record[1]}'
-        logger.debug(f'Constructed URL: {url}')
+        logger.debug('Constructed URL: %s', url)
         try:
             www = urllib.request.urlopen(url, timeout=3)
             temp = www.read().decode('utf-8')
             temp = float(temp)
             if convert_to_fahrenheit:
-                temp *= (9/5)
+                temp *= 9 / 5
                 temp += 32.0
                 temp = round(temp)
         except Exception as e:
             logger.exception(e)
-            logger.error(f'Failed to read temperature at URL: {url}')
+            logger.error('Failed to read temperature at URL: %s', url)
             temp = None
         finally:
             if www is not None: