出于测试目的,我需要用各种消息填充数百个电子邮箱,并为此使用 smtplib。但除此之外,我不仅需要能够将邮件发送到特定邮箱,还需要能够抄送和密件抄送它们。它看起来不像 smtplib 发送电子邮件时支持抄送和密件抄送。
寻找如何从 python 脚本抄送或密件抄送发送消息的建议。
(并且 - 不,我不会创建一个脚本来向我的测试环境之外的任何人发送垃圾邮件。)
最佳答案
电子邮件 header 对于 smtp 服务器来说并不重要。只需在发送电子邮件时将抄送和密件抄送收件人添加到 toaddrs
即可。对于 CC,将它们添加到 CC header 中。
toaddr = 'buffy@sunnydale.k12.ca.us'
cc = ['alexander@sunydale.k12.ca.us','willow@sunnydale.k12.ca.us']
bcc = ['chairman@slayerscouncil.uk']
fromaddr = 'giles@sunnydale.k12.ca.us'
message_subject = "disturbance in sector 7"
message_text = "Three are dead in an attack in the sewers below sector 7."
message = "From: %s\r\n" % fromaddr
+ "To: %s\r\n" % toaddr
+ "CC: %s\r\n" % ",".join(cc)
+ "Subject: %s\r\n" % message_subject
+ "\r\n"
+ message_text
toaddrs = [toaddr] + cc + bcc
server = smtplib.SMTP('smtp.sunnydale.k12.ca.us')
server.set_debuglevel(1)
server.sendmail(fromaddr, toaddrs, message)
server.quit()
关于python: 如何使用 TO、CC 和 BCC 发送邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53947988/