Skip to content

Commit 6318d49

Browse files
committed
Added an utility function to get email payload as unicode text.
- Legacy-Id: 17800
1 parent 2b68095 commit 6318d49

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

ietf/utils/mail.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -616,6 +616,18 @@ def valid(email):
616616
return [ formataddr(e) for e in getaddresses([text, ]) if valid(e) ]
617617

618618

619+
619620
def get_payload(msg, decode=False):
620621
return msg.get_payload(decode=decode)
622+
623+
def get_payload_text(msg, decode=True):
624+
charset = msg.get_charset()
625+
payload = msg.get_payload(decode=decode)
626+
try:
627+
payload = payload.decode(str(charset))
628+
except UnicodeDecodeError as e:
629+
sys.stderr.write("Exception: %s\n" % e)
630+
sys.stderr.write("Payload: %s\n" % payload)
631+
raise
632+
return payload
621633

0 commit comments

Comments
 (0)