diff options
Diffstat (limited to 'python/download_emails.py')
| -rw-r--r-- | python/download_emails.py | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/python/download_emails.py b/python/download_emails.py index a0de7e6c..bc338fde 100644 --- a/python/download_emails.py +++ b/python/download_emails.py @@ -72,7 +72,15 @@ def get_msg(service, user_id, msg_id): def msg_content(msg): """Extract subject and body from a gmail message""" subject = [x['value'] for x in msg['payload']['headers'] if x['name']=='Subject'][0] - content = base64.urlsafe_b64decode(msg['payload']['body']['data']).decode('utf-8') + payload = msg['payload'] + if payload['mimeType'] == 'text/plain': + body = payload['body'] + elif payload['mimeType'] == 'multipart/alternative': + parts = payload['parts'] + body = parts[0]['body'] + else: + raise KeyError + content = base64.urlsafe_b64decode(body['data']).decode('utf-8') date = msg['internalDate'] ## date /1000 to get timestamp return subject, content, date |
