Я могу читать вложения, отправленные со всех почтовых клиентов, которые я тестировал, кроме почтового приложения по умолчанию для Android.Хотя он работает через приложение gmail в Android.
Вот код:
import email as emaillib
result, data = imap_conn.uid('fetch', email_id, '(RFC822)')
raw_email = data[0][1]
get_attachments(emaillib.message_from_string(raw_email))
def get_attachments(email_message_instance):
attachments = []
for part in email_message_instance.walk():
if part.get_content_maintype() == 'multipart':
continue
if part.get('Content-Disposition') is None:
continue
data = part.get_payload(decode=True)
if not data:
continue
filename = part.get_filename()
print 'appending attachment with filename: ', filename
attachments.append((filename, data))
return attachments
Когда я отправляю одно вложение из приложения электронной почты по умолчанию в Android, оно печатает:
appending attachment with filename: None
appending attachment with filename: None
appending attachment with filename: =?utf-8?B?SU1BRzAxOTMuanBn?=
Есть идеи?