Форум сайта python.su
0
Добрый день. Помогите, пожалуйста, выдрать аттач из письма. Все примеры, которые нашел, действуют примерно по одному плану:
response = server.retr(msgCount) msg = email.message_from_bytes(b'\n'.join(response[1]) for part in msg.walk(): print(part.get_content_type()) if part.get_content_maintype() == 'multipart': continue if part.get('Content-Disposition') is None: print("no content dispo") continue filename = part.get_filename() fp = open(os.path.join(self.savedir, filename), 'wb') fp.write(part.get_payload(decode=1)) fp.close
import pickle f = open('msg.dat', 'rb') response = pickle.load(f) f.close()
Офлайн
857
>>> import pickle >>> import email >>> >>> r = pickle.load(open('msg.dat', 'rb')) >>> >>> m = email.message_from_bytes(b'\n'.join(r[1])) >>> p = tuple(m.walk())[-1] >>> n = p.get_filename() >>> c = p.get_payload(decode=True) >>> >>> n, c[:10] ('LSN_00003396_T6.lsn', b'\x0c\x00\x00\x00Nemesi') >>>
Отредактировано py.user.next (Май 21, 2015 01:09:17)
Офлайн
0
py.user.next Спасибо огромное, очень выручили.
Офлайн