Specify a sender when sending mail with Python (smtplib)

前端 未结 6 1246
不思量自难忘°
不思量自难忘° 2020-12-02 00:19

I have a very simple piece of code (just for testing):

import smtplib
import time

server = \'smtp.myprovider.com\'
recipients = [\'johndoe@somedomain.com\']         


        
6条回答
  •  予麋鹿
    予麋鹿 (楼主)
    2020-12-02 00:26

    You can utilize the email.message.Message class, and use it to generate mime headers, including from:, to: and subject. Send the as_string() result via SMTP.

    >>> from email import message
    >>> m1=message.Message()
    >>> m1.add_header('from','me@no.where')
    >>> m1.add_header('to','myself@some.where')
    >>> m1.add_header('subject','test')
    >>> m1.set_payload('test\n')
    >>> m1.as_string()
    'from: me@no.where\nto: myself@some.where\nsubject: test\n\ntest\n'
    >>> 
    

提交回复
热议问题