python 发送邮件connect none_python smtplib不带收件人发送邮件

我用pythonsmtplib发送电子邮件。他们到达目的地,但“收件人”字段不见了。

在Gmail中,“收件人”字段是空的,但在thunderbird中是“未公开的收件人”。我做了一些谷歌搜索,但什么也没找到。在

我在解释这个问题的代码中没有看到任何错误,但是我在跟踪另一个堆栈溢出问题的代码片段,所以可能是我遗漏了一些东西。在

这是邮件发件人的代码:def connect_and_send(send_from, send_to, carbon_copy, msg):

confp = ConfigParser()

confp.read("config/mail.ini")

server = str(confp.get('mail', 'host'))

port = str(confp.get('mail', 'port'))

user = str(confp.get('mail', 'username'))

password= str(confp.get('mail', 'password'))

smtp = smtplib.SMTP_SSL()

smtp.connect(server, port)

smtp.login(

user,

password

)

send_to.append(carbon_copy)

smtp.sendmail(send_from, send_to, msg.as_string())

def send_mail(send_from, send_to, carbon_copy, subject, text, signature, files=None):

assert isinstance(send_to, list)

if ARGS.debug:

print "MAIL to:", send_to

print "MAIL from:", send_from

print "MAIL subject", subject

print "with {0} files attached".format(len(files))

msg = MIMEMultipart('alternative')

msg["Subject"] = subject

msg["From"] = send_from

msg["Date"] = formatdate(localtime=True)

msg["To"] = COMMASPACE.join(send_to)

msg.attach(MIMEText(text+"\n"+signature))

for f in files or []:

part = MIMEBase('image', "png")

part.set_payload(f[1].read())

encoders.encode_base64(part)

part.add_header('Content-Disposition', 'attachment; filename="{0}.png"'.format(f[0]))

msg.attach(part)

if ARGS.debug and not ARGS.force_send:

print msg.as_string()

else:

connect_and_send(send_from, send_to, carbon_copy, msg.as_string())

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当您使用Pythonsmtplib模块发送邮件时,可能会遇到以下错误之一: - smtplib.SMTPAuthenticationError: (535, '5.7.8 Username and Password not accepted. Learn more at\n5.7.8 https://support.google.com/mail/?p=BadCredentials ') - smtplib.SMTPServerDisconnected: Connection unexpectedly closed - smtplib.SMTPSenderRefused: (501, b'5.5.4 Invalid Address ') - smtplib.SMTPRecipientsRefused: {'recipient@example.com': (550, '5.1.1 The email account that you tried to reach does not exist. Please try\n5.1.1 double-checking the recipient\'s email address for typos or\n5.1.1 unnecessary spaces. Learn more at\n5.1.1 https://support.google.com/mail/?p=NoSuchUser ') 这些错误通常表示您的SMTP服务器拒绝了您的请求。这可能是由于以下原因之一: 1. 您提供的用户名和密码不正确:请确保您的用户名和密码正确,并且您已经启用了SMTP服务。如果您使用的是Google Mail,您需要在Google账户的安全选项中允许低安全性应用程序访问您的帐户。 2. 您的IP地址被SMTP服务器阻止:如果您在短时间内多次尝试送电子邮件,SMTP服务器可能会阻止您的IP地址。请等待一段时间后再尝试送电子邮件。 3. 您提供的送者或收件人地址无效:请确保您提供的送者和收件人地址是有效的,并且符合SMTP服务器的要求。 如果您仍然无法解决此问题,请尝试使用其他SMTP服务器或与您的SMTP服务器管理员联系以获取更多帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值