Format codebase w/ black.
[kiosk.git] / generic_news_rss_renderer.py
index 698f7aa5bd6e4ca14f1cb71b19d80ca7907dc9f7..3bc5f1be147026b7cac5f95eddfc569951f6e506 100644 (file)
@@ -10,10 +10,10 @@ import random
 import re
 import xml.etree.ElementTree as ET
 
+
 class generic_news_rss_renderer(renderer.debuggable_abstaining_renderer):
     def __init__(self, name_to_timeout_dict, feed_site, feed_uris, page_title):
-        super(generic_news_rss_renderer, self).__init__(name_to_timeout_dict,
-                                                        False)
+        super(generic_news_rss_renderer, self).__init__(name_to_timeout_dict, False)
         self.debug = 1
         self.feed_site = feed_site
         self.feed_uris = feed_uris
@@ -44,32 +44,32 @@ class generic_news_rss_renderer(renderer.debuggable_abstaining_renderer):
         return False
 
     def find_title(self, item):
-        return item.findtext('title')
+        return item.findtext("title")
 
     def munge_title(self, title):
         return title
 
     def find_description(self, item):
-        return item.findtext('description')
+        return item.findtext("description")
 
     def munge_description(self, description):
-        description = re.sub('<[^>]+>', '', description)
+        description = re.sub("<[^>]+>", "", description)
         return description
 
     def find_link(self, item):
-        return item.findtext('link')
+        return item.findtext("link")
 
     def munge_link(self, link):
         return link
 
     def find_image(self, item):
-        return item.findtext('image')
+        return item.findtext("image")
 
     def munge_image(self, image):
         return image
 
     def find_pubdate(self, item):
-        return item.findtext('pubDate')
+        return item.findtext("pubDate")
 
     def munge_pubdate(self, pubdate):
         return pubdate
@@ -84,7 +84,7 @@ class generic_news_rss_renderer(renderer.debuggable_abstaining_renderer):
             tzinfo = pubdate.tzinfo
             now = datetime.datetime.now(tzinfo)
             delta = (now - pubdate).total_seconds() / (60 * 60 * 24)
-            if (delta > n):
+            if delta > n:
                 return True
         return False
 
@@ -97,7 +97,7 @@ class generic_news_rss_renderer(renderer.debuggable_abstaining_renderer):
         elif key == "Shuffle News":
             return self.shuffle_news()
         else:
-            raise error('Unexpected operation')
+            raise error("Unexpected operation")
 
     def shuffle_news(self):
         headlines = page_builder.page_builder()
@@ -109,7 +109,8 @@ class generic_news_rss_renderer(renderer.debuggable_abstaining_renderer):
             return False
         for msg in subset:
             headlines.add_item(msg)
-        headlines.set_custom_html("""
+        headlines.set_custom_html(
+            """
 <STYLE>
 a:link {
   color: black;
@@ -126,16 +127,19 @@ a:active {
   text-decoration: none;
   font-weight: bold;
 }
-</STYLE>""")
-        f = file_writer.file_writer('%s_%s_25900.html' % (
-            self.get_headlines_page_prefix(),
-            self.get_headlines_page_priority()))
+</STYLE>"""
+        )
+        f = file_writer.file_writer(
+            "%s_%s_25900.html"
+            % (self.get_headlines_page_prefix(), self.get_headlines_page_priority())
+        )
         headlines.render_html(f)
         f.close()
 
         details = page_builder.page_builder()
         details.set_layout(page_builder.page_builder.LAYOUT_ONE_ITEM)
-        details.set_custom_html("""
+        details.set_custom_html(
+            """
 <STYLE>
 a:link {
   color: black;
@@ -152,19 +156,21 @@ a:active {
   text-decoration: none;
   font-weight: bold;
 }
-</STYLE>""")
+</STYLE>"""
+        )
         details.set_title("%s" % self.page_title)
         subset = self.details.subset(1)
         if subset is None:
-            self.debug_print("Not enough details to choose from.");
+            self.debug_print("Not enough details to choose from.")
             return False
         for msg in subset:
             blurb = msg
-            blurb += u'</TD>'
+            blurb += u"</TD>"
             details.add_item(blurb)
-        g = file_writer.file_writer('%s_%s_86400.html' % (
-            self.get_details_page_prefix(),
-            self.get_details_page_priority()))
+        g = file_writer.file_writer(
+            "%s_%s_86400.html"
+            % (self.get_details_page_prefix(), self.get_details_page_priority())
+        )
         details.render_html(g)
         g.close()
         return True
@@ -185,9 +191,12 @@ a:active {
                 "GET",
                 uri,
                 None,
-                { "Accept": "*/*",
-                  "Cache-control": "max-age=59",
-                  "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36"})
+                {
+                    "Accept": "*/*",
+                    "Cache-control": "max-age=59",
+                    "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36",
+                },
+            )
             try:
                 response = self.conn.getresponse()
             except:
@@ -195,8 +204,12 @@ a:active {
                 return False
 
             if response.status != 200:
-                print(("%s: RSS fetch_news error, response: %d" % (self.page_title,
-                                                                  response.status)))
+                print(
+                    (
+                        "%s: RSS fetch_news error, response: %d"
+                        % (self.page_title, response.status)
+                    )
+                )
                 self.debug_print(response.read())
                 return False
 
@@ -206,26 +219,26 @@ a:active {
                 title = self.find_title(item)
                 if title is not None:
                     title = self.munge_title(title)
-                description = item.findtext('description')
+                description = item.findtext("description")
                 if description is not None:
                     description = self.munge_description(description)
                 image = self.find_image(item)
                 if image is not None:
                     image = self.munge_image(image)
-                link = item.findtext('link')
+                link = item.findtext("link")
                 if link is not None:
                     link = self.munge_link(link)
 
-                if (title is None or
-                    not self.item_is_interesting_for_headlines(title,
-                                                               description,
-                                                               item)):
+                if title is None or not self.item_is_interesting_for_headlines(
+                    title, description, item
+                ):
                     self.debug_print('Item "%s" is not interesting' % title)
                     continue
 
-                if (self.should_profanity_filter() and
-                    (self.filter.contains_bad_words(title) or
-                    self.filter.contains_bad_words(description))):
+                if self.should_profanity_filter() and (
+                    self.filter.contains_bad_words(title)
+                    or self.filter.contains_bad_words(description)
+                ):
                     self.debug_print('Found bad words in item "%s"' % title)
                     continue
 
@@ -237,7 +250,7 @@ a:active {
                     blurb += u'style="padding:8px;">'
 
                 if link is None:
-                    blurb += u'<P><B>%s</B>' % title
+                    blurb += u"<P><B>%s</B>" % title
                 else:
                     blurb += u'<P><B><A HREF="%s">%s</A></B>' % (link, title)
 
@@ -246,19 +259,18 @@ a:active {
                     pubdate = self.munge_pubdate(pubdate)
                     ts = parse(pubdate)
                     blurb += u"  <FONT COLOR=#cccccc>%s</FONT>" % (
-                        ts.strftime("%b&nbsp;%d"))
+                        ts.strftime("%b&nbsp;%d")
+                    )
 
-                if (description is not None and
-                    self.item_is_interesting_for_article(title,
-                                                         description,
-                                                         item)):
+                if description is not None and self.item_is_interesting_for_article(
+                    title, description, item
+                ):
                     longblurb = blurb
 
                     longblurb += u"<BR>"
                     longblurb += description
                     longblurb += u"</DIV>"
-                    longblurb = longblurb.replace("font-size:34pt",
-                                                  "font-size:44pt")
+                    longblurb = longblurb.replace("font-size:34pt", "font-size:44pt")
                     self.details.add(longblurb)
 
                 blurb += u"</DIV>"