Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用SMTPLIB.data()发送文件附件_Python_Smtplib - Fatal编程技术网

Python 使用SMTPLIB.data()发送文件附件

Python 使用SMTPLIB.data()发送文件附件,python,smtplib,Python,Smtplib,我正在尝试使用smtplib发送一封电子邮件,它使用诸如MAIL、RCPT和DATA之类的低级命令 这允许我在发送到正确的收件箱(必需)的同时隐藏收件人字段。我的问题是,我没有找到这样发送文件附件的方法,也没有找到在使用smtp_server.sendmail()时“欺骗”收件人字段的方法。以下是“原始”方法: smtp_server = smtplib.SMTP('smtp.mail.server.com', 587) smtp_server.ehlo() smtp_s

我正在尝试使用smtplib发送一封电子邮件,它使用诸如MAIL、RCPT和DATA之类的低级命令

这允许我在发送到正确的收件箱(必需)的同时隐藏收件人字段。我的问题是,我没有找到这样发送文件附件的方法,也没有找到在使用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()

谢谢你的帮助。

这其实很简单, 创建MIMEMultipart消息对象,只需调用

smtp_server.data(message.as_string())