X-Git-Url: https://wannabe.guru.org/gitweb/?a=blobdiff_plain;f=twitter_renderer.py;h=1c9dbeebcf31e924f0ffb75e730921f3d04a3940;hb=5e241dc47e497c547463cecc07946ea6882835a7;hp=173842ef0ea2801182760ff7a1d0111f1739bff7;hpb=41262fc75551d35bcc9979011078b0e5b4e7b36a;p=kiosk.git
diff --git a/twitter_renderer.py b/twitter_renderer.py
index 173842e..1c9dbee 100644
--- a/twitter_renderer.py
+++ b/twitter_renderer.py
@@ -6,6 +6,7 @@ import re
import secrets
import tweepy
+
class twitter_renderer(renderer.debuggable_abstaining_renderer):
def __init__(self, name_to_timeout_dict):
super(twitter_renderer, self).__init__(name_to_timeout_dict, False)
@@ -14,7 +15,8 @@ class twitter_renderer(renderer.debuggable_abstaining_renderer):
self.handles_by_author = dict()
self.filter = profanity_filter.profanity_filter()
self.urlfinder = re.compile(
- "((http|https)://[\-A-Za-z0-9\\.]+/[\?\&\-A-Za-z0-9_\\.]+)")
+ "((http|https)://[\-A-Za-z0-9\\.]+/[\?\&\-A-Za-z0-9_\\.]+)"
+ )
# == OAuth Authentication ==
#
@@ -23,14 +25,14 @@ class twitter_renderer(renderer.debuggable_abstaining_renderer):
# The consumer keys can be found on your application's Details
# page located at https://dev.twitter.com/apps (under "OAuth settings")
- consumer_key=secrets.twitter_consumer_key
- consumer_secret=secrets.twitter_consumer_secret
+ consumer_key = secrets.twitter_consumer_key
+ consumer_secret = secrets.twitter_consumer_secret
# The access tokens can be found on your applications's Details
# page located at https://dev.twitter.com/apps (located
# under "Your access token")
- access_token=secrets.twitter_access_token
- access_token_secret=secrets.twitter_access_token_secret
+ access_token = secrets.twitter_access_token
+ access_token_secret = secrets.twitter_access_token_secret
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
@@ -48,11 +50,11 @@ class twitter_renderer(renderer.debuggable_abstaining_renderer):
elif key == "Shuffle Tweets":
return self.shuffle_tweets()
else:
- raise error('Unexpected operation')
+ raise error("Unexpected operation")
def fetch_tweets(self):
try:
- tweets = self.api.home_timeline(tweet_mode='extended', count=200)
+ tweets = self.api.home_timeline(tweet_mode="extended", count=200)
except:
print("Exception while fetching tweets!")
return False
@@ -72,37 +74,39 @@ class twitter_renderer(renderer.debuggable_abstaining_renderer):
handle = self.handles_by_author[author]
tweets = self.tweets_by_author[author]
already_seen = set()
- f = file_writer.file_writer('twitter_10_3600.html')
- f.write('
')
- f.write('%s (@%s) | \n' % (author, handle))
+ f = file_writer.file_writer("twitter_10_3600.html")
+ f.write("")
+ f.write("%s (@%s) | \n" % (author, handle))
f.write('')
f.write('![](twitter.png) |
\n')
- f.write('
\n\n')
+ f.write("
\n\n")
count = 0
length = 0
for tweet in tweets:
text = tweet.full_text
- if ((text not in already_seen) and
- (not self.filter.contains_bad_words(text))):
+ if (text not in already_seen) and (
+ not self.filter.contains_bad_words(text)
+ ):
already_seen.add(text)
text = self.linkify(text)
- f.write('- %s\n' % text)
+ f.write("
- %s\n" % text)
count += 1
length += len(text)
if count > 3 or length > 270:
break
- f.write('
\n')
+ f.write("
\n")
f.close()
return True
+
# Test
-#t = twitter_renderer(
+# t = twitter_renderer(
# {"Fetch Tweets" : 1,
# "Shuffle Tweets" : 1})
-#x = "bla bla bla https://t.co/EjWnT3UA9U bla bla"
-#x = t.linkify(x)
-#print x
-#if t.fetch_tweets() == 0:
+# x = "bla bla bla https://t.co/EjWnT3UA9U bla bla"
+# x = t.linkify(x)
+# print x
+# if t.fetch_tweets() == 0:
# print("Error fetching tweets, none fetched.")
-#else:
+# else:
# t.shuffle_tweets()