Отправка файловых вложений с использованием SMTPLIB.data () - PullRequest
0 голосов
/ 27 января 2011

Я пытаюсь отправить электронное письмо, используя smtplib, используя команды низкого уровня, такие как MAIL, RCPT и DATA.

Это позволяет мне замаскировать поле «Кому», в то же время доставляя его в соответствующий почтовый ящик (обязательно). Моя проблема в том, что я не нашел способ отправлять файловые вложения таким образом, и я не нашел способ «подделать» поле To при использовании smtp_server.sendmail (). Вот «сырой» метод:

    smtp_server = smtplib.SMTP('smtp.mail.server.com', 587)
    smtp_server.ehlo()
    smtp_server.starttls()
    smtp_server.ehlo()
    smtp_server.login('user','pass')

    smtp_server.mail(sender)
    smtp_server.rcpt(inbox)
    data = """From: {0}
To: {1}

{2}"""
    data = data.format(sender, recipient, message)
    smtp_server.data(data)
    smtp_server.close()

Спасибо за любую помощь.

1 Ответ

0 голосов
/ 27 января 2011

На самом деле это было довольно просто: создать объект сообщения MIMEMultipart и просто вызвать

smtp_server.data(message.as_string())
...