电子邮件发送并显示已发送给两个列出的收件人,但是只有第一个列出的收件人实际收到了该消息。奇怪,因为我没有发现我输入地址的方式有什么特别错误(基于我遇到的其他示例),所以我正在寻找关于此问题的另一种观点。
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.mime.base import MIMEBase
from email import encoders
email_user = 'myemail@gmail.com'
email_send = 'otheremail1@gmail.com, otheremail2@gmail.com'
subject = 'Test'
msg = MIMEMultipart()
msg['From'] = email_user
msg['To'] = email_send
msg['Subject'] = subject
body = """Hello,
This is a test.
Thanks!"""
msg.attach(MIMEText(body,'plain'))
filename='dataset.csv'
attachment =open(filename,'rb')
part = MIMEBase('application','octet-stream')
part.set_payload((attachment).read())
encoders.encode_base64(part)
part.add_header('Content-Disposition',"attachment; filename= "+filename)
msg.attach(part)
text = msg.as_string()
server = smtplib.SMTP('smtp.office365.com',587)
server.starttls()
server.login(email_user,'password')
server.sendmail(email_user,email_send,text)
server.quit()
答案 0 :(得分:1)
server.sendmail(email_user,email_send.split(','),text) and remove the space
基本上,您只发送了第一个,而需要传递另一个。