Add code for printing RTs on the thermal printer

This commit is contained in:
Daniel Schulte 2018-03-18 18:00:23 +01:00
parent c7720f6c85
commit eb5991468b
1 changed files with 11 additions and 2 deletions

View File

@ -171,13 +171,22 @@ class StreamListener(tweepy.StreamListener):
self.seen_tweets.add(rt.id) self.seen_tweets.add(rt.id)
rt_text = rt.extended_tweet["full_text"] if rt.truncated else rt.text rt_text = rt.extended_tweet["full_text"] if rt.truncated else rt.text
rt_text = html.unescape(rt_text) rt_text = html.unescape(rt_text)
#print("[{}] New retweet by @{}:".format(self.title, status.user.screen_name))
#print("@{}: {}".format(rt.user.screen_name, rt_text))
header = format_header(status.user.screen_name, status.user.name, status.created_at, is_rt=True) header = format_header(status.user.screen_name, status.user.name, status.created_at, is_rt=True)
rt_header = format_header(rt.user.screen_name, rt.user.name, rt.created_at) rt_header = format_header(rt.user.screen_name, rt.user.name, rt.created_at)
print(header) print(header)
print(rt_header) print(rt_header)
print(rt_text) print(rt_text)
if self.printer:
try:
encoded_header = header.encode("latin-1")
encoded_rt_header = rt_header.encode("latin-1")
encoded_rt_text = rt_text.encode("latin-1")
self.printer.write(encoded_header)
self.printer.write(encoded_rt_header)
self.printer.write(encoded_rt_text, True, True)
self.printer.flush()
except UnicodeEncodeError:
print("Can't print. Encoding issue.")
return True return True
def on_error(self, status_code): def on_error(self, status_code):