Changes ;)
[kiosk.git] / stranger_renderer.py
index a68c88df72c812b8afc8257247d53f8b9f4da4cb..ccdad547c0a534a04d63a1632c858210bb043963 100644 (file)
@@ -1,6 +1,6 @@
 #!/usr/bin/env python3
 
-from bs4 import BeautifulSoup
+from bs4 import BeautifulSoup  # type: ignore
 import datetime
 import http.client
 import random
@@ -12,7 +12,6 @@ import grab_bag
 import page_builder
 import profanity_filter
 import renderer
-import renderer_catalog
 
 
 class stranger_events_renderer(renderer.debuggable_abstaining_renderer):
@@ -31,7 +30,7 @@ class stranger_events_renderer(renderer.debuggable_abstaining_renderer):
         elif key == "Shuffle Events":
             return self.shuffle_events()
         else:
-            raise error("Unknown operaiton")
+            raise Exception("Unknown operaiton")
 
     def get_style(self):
         return """
@@ -90,30 +89,30 @@ class stranger_events_renderer(renderer.debuggable_abstaining_renderer):
     def fetch_events(self) -> bool:
         self.events.clear()
         feed_uris = [
-            "/stranger-seattle/events/?page=1",
-            "/stranger-seattle/events/?page=2",
-            "/stranger-seattle/events/?page=3",
+            "/seattle/events/?page=1",
+            "/seattle/events/?page=2",
+            "/seattle/events/?page=3",
         ]
         now = datetime.datetime.now()
         ts = now + datetime.timedelta(1)
         tomorrow = datetime.datetime.strftime(ts, "%Y-%m-%d")
-        feed_uris.append(f"/stranger-seattle/events/?start-date={tomorrow}")
+        feed_uris.append(f"/seattle/events/?start-date={tomorrow}")
         delta = 5 - now.weekday()
         if delta <= 0:
             delta += 7
         if delta > 1:
             ts = now + datetime.timedelta(delta)
             next_sat = datetime.datetime.strftime(ts, "%Y-%m-%d")
-            feed_uris.append(f"/stranger-seattle/events/?start-date={next_sat}&page=1")
-            feed_uris.append(f"/stranger-seattle/events/?start-date={next_sat}&page=2")
+            feed_uris.append(f"/seattle/events/?start-date={next_sat}&page=1")
+            feed_uris.append(f"/seattle/events/?start-date={next_sat}&page=2")
         delta += 1
         if delta > 1:
             ts = now + datetime.timedelta(delta)
             next_sun = datetime.datetime.strftime(ts, "%Y-%m-%d")
-            feed_uris.append(f"/stranger-seattle/events/?start-date={next_sun}&page=1")
-            feed_uris.append(f"/stranger-seattle/events/?start-date={next_sun}&page=2")
+            feed_uris.append(f"/seattle/events/?start-date={next_sun}&page=1")
+            feed_uris.append(f"/seattle/events/?start-date={next_sun}&page=2")
 
-        filter = profanity_filter.profanity_filter()
+        filter = profanity_filter.ProfanityFilter()
         for uri in feed_uris:
             try:
                 self.debug_print("fetching 'https://%s%s'" % (self.feed_site, uri))
@@ -122,7 +121,7 @@ class stranger_events_renderer(renderer.debuggable_abstaining_renderer):
                 response = self.conn.getresponse()
                 if response.status != 200:
                     self.debug_print("Connection failed, status %d" % (response.status))
-                    self.debug_print(response.getheaders())
+                    self.debug_print(str(response.getheaders()))
                     continue
                 raw = response.read()
             except:
@@ -132,29 +131,29 @@ class stranger_events_renderer(renderer.debuggable_abstaining_renderer):
             soup = BeautifulSoup(raw, "html.parser")
             for x in soup.find_all("div", class_="row event list-item mb-3 py-3"):
                 text = x.get_text()
-                if filter.contains_bad_words(text):
+                if filter.contains_bad_word(text):
                     continue
-                raw = str(x)
-                raw = raw.replace(
+                raw_str = str(x)
+                raw_str = raw_str.replace(
                     'src="/', 'align="left" src="https://www.thestranger.com/'
                 )
-                raw = raw.replace('href="/', 'href="https://www.thestranger.com/')
-                raw = raw.replace("FREE", "Free")
-                raw = raw.replace("Save Event", "")
-                raw = re.sub("^\s*$", "", raw, 0, re.MULTILINE)
-                raw = re.sub(
+                raw_str = raw_str.replace('href="/', 'href="https://www.thestranger.com/')
+                raw_str = raw_str.replace("FREE", "Free")
+                raw_str = raw_str.replace("Save Event", "")
+                raw_str = re.sub("^\s*$", "", raw_str, 0, re.MULTILINE)
+                raw_str = re.sub(
                     '<span[^<>]*class="calendar-post-ticket"[^<>]*>.*</#span>',
                     "",
-                    raw,
+                    raw_str,
                     0,
                     re.DOTALL | re.IGNORECASE,
                 )
-                self.events.add(raw)
+                self.events.add(raw_str)
             self.debug_print(f"fetched {self.events.size()} events so far.")
         return self.events.size() > 0
 
 
 # Test
-# x = stranger_events_renderer({"Test", 123})
-# x.periodic_render("Fetch Events")
-# x.periodic_render("Shuffle Events")
+#x = stranger_events_renderer({"Test", 123})
+#x.periodic_render("Fetch Events")
+#x.periodic_render("Shuffle Events")