remove emojis from top titles

This commit is contained in:
2021-11-07 19:42:34 +01:00
parent 03865bf06d
commit fa65df4b97

View File

@@ -12,6 +12,7 @@ import quopri
import requests import requests
import json import json
import subprocess import subprocess
import re
from pprint import pprint from pprint import pprint
CONFIG_FILE = "generator.conf" CONFIG_FILE = "generator.conf"
@@ -42,10 +43,20 @@ def get_body_text(msg):
payload = quopri.decodestring(payload.encode("ascii")).decode(part.get_content_charset("utf-8")) payload = quopri.decodestring(payload.encode("ascii")).decode(part.get_content_charset("utf-8"))
return payload return payload
# from https://stackoverflow.com/a/49986645
def deEmojify(text):
regrex_pattern = re.compile(pattern = "["
u"\U0001F600-\U0001F64F" # emoticons
u"\U0001F300-\U0001F5FF" # symbols & pictographs
u"\U0001F680-\U0001F6FF" # transport & map symbols
u"\U0001F1E0-\U0001F1FF" # flags (iOS)
"]+", flags = re.UNICODE)
return regrex_pattern.sub(r'',text)
class Top: class Top:
def __init__(self, title=None, sender=None, body=None, protostub=None, message=None): def __init__(self, title=None, sender=None, body=None, protostub=None, message=None):
if message: if message:
self.title = decode_header(message["Subject"][6:]) self.title = deEmojify(decode_header(message["Subject"][6:]))
real_name, address = email.utils.parseaddr(message["From"]) real_name, address = email.utils.parseaddr(message["From"])
real_name = decode_header(real_name) real_name = decode_header(real_name)
self.sender = real_name or address self.sender = real_name or address