美文网首页PYTHON
python发邮件,多个收件人但是只有第一个可以收到

python发邮件,多个收件人但是只有第一个可以收到

作者: 葵花点穴 | 来源:发表于2017-08-22 10:43 被阅读959次

    from email.mime.text import MIMEText

    from email.mime.multipart import MIMEMultipart

    import smtplib

    以上是导入的包,通过email和smtplib实现发邮件。

    折腾好久,邮件里可以看到收件人有多个,实际上始终只能第一个收件人可以收到邮件。经多次搜索,发现是这样:email中收件人和sendmail中的收件人是没啥联系的。

    mail_to = ['test1@exp.com','test2@exp.com']

    server = smtplib.SMTP()

    server.connect()

    server.sendmail(mail_from, mail_to, msg.as_string())

    server.quit()

    mail_to = 'test1@exp.com,test2@exp.com'

    msg = MIMEMultipart('related') ##采用related定义内嵌资源的邮件体

    msgtext = MIMEText(content,_subtype='html',_charset='utf-8') ##_subtype有plain,html等格式,避免使用错误

    msg['Subject'] = subject

    msg['From'] = mail_from

    msg['To'] =mail_to

    sendmail中收件人,它的格式应该为list。这个为实际的收件人地址。

    而msg['To'] 格式是字符串(str)。这个只是为了邮件中打印出来而已。

    sendmail查源码,python/lib/smtplib.py大概690行左右,或者搜索tolist。

    相关文章

      网友评论

        本文标题:python发邮件,多个收件人但是只有第一个可以收到

        本文链接:https://www.haomeiwen.com/subject/crikdxtx.html