python - 尝试创建电子邮件脚本,但并非所有收件人都收到电子邮件
问题描述
电子邮件发送并显示它发送给两个列出的收件人,但只有第一个列出的收件人实际收到该消息。奇怪,因为我没有注意到我输入地址的方式有什么特别的错误(基于我遇到的其他例子),所以我正在寻找关于这个问题的另一种观点。
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()
解决方案
server.sendmail(email_user,email_send.split(','),text) and remove the space
基本上你只发送了第一个,需要通过另一个。
推荐阅读
- javascript - 该脚本在我的计算机上工作,但当我将其上传到服务器时不起作用
- javascript - dropdown selected option 在另一个下拉列表中选择选项
- amazon-web-services - 使用 DynamoDB Stream / Lambda 的空事件对象
- security - Adobe Animate (Flash):在调试 (Ctrl+Shift+Enter) 中违反安全沙箱,但在测试中违反 (Ctrl+Enter)
- python - 使用 Discord 机器人,我如何从另一个机器人获取嵌入消息的字符串
- c - 我可以有一点引用 C 位域的另一部分吗?
- python - OpenCV VideoCapture:服务器回复中的不匹配传输
- android - kotlin webview android.view.View android.view.View.findViewById(int)' 对空对象引用 ko
- sql-server - 使用触发器收集表中的更新值
- python - 使用装饰器的 csrf 令牌在 Django DeleteView 中不起作用