python: 如何使用 TO、CC 和 BCC 发送邮件?

标签 python email testing

出于测试目的,我需要用各种消息填充数百个电子邮箱,并为此使用 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/

相关文章:

ios - 使用 KIF : beforeEach is called after my view controller is loaded? 进行功能测试

c# - 如何检查给定的电子邮件地址是否确实存在于 C# 中?

ios - 从 iOS 应用程序发送电子邮件

ruby-on-rails - 为布局中使用的部分编写规范

java - 初学者代码测试 - 怎么做?

Perl 电子邮件依赖项

python - 如何通过登录用户向问题模型添加选择

python - 为什么 NotImplemented 不引发 TypeError?

python - WSGI 与 PYthon/Django : serving alternating old and new versions of app 的怪异

python - 基于多个数据点的评分