【问题标题】:Sending email using smtplib doesn't work anymore使用 smtplib 发送电子邮件不再起作用
【发布时间】:2015-06-16 17:34:25
【问题描述】:

所以昨天我写了这段代码,它工作得很好,但今天它不再发送电子邮件了。谁能解释一下原因?

import smtplib

SERVER = 'owa.server.com'
FROM = 'noreply@server.com'
TO = ['person@gmail.com', '1112223344@vtext.com']

name = 'Mr. Man'
SUBJECT = 'Recent Information for: %s' % (name)
TEXT = "Dear " +name+ ",\n\nHello.\n\nSincerely,\nOur Guys Here"

message = """From: %s\r\nTo: %s\r\nSubject: %s\r\n\

%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT)

server = smtplib.SMTP(SERVER, 587)
server.ehlo()
server.starttls()
server.ehlo
server.login('noreply@server.com', 'password')
server.sendmail(FROM, TO, message)
server.quit()

【问题讨论】:

  • 您是否尝试过使用 Google smtp,以排除您的服务器有问题?
  • 我不认为这是我们的服务器,因为它正在向手机发送消息,而不是我的个人电子邮件。
  • 错误信息是什么?
  • 它在我的垃圾邮件中。抱歉,在我问之前没有想到所有的可能性。

标签: python email smtplib


【解决方案1】:

此代码是一个有效的 sn-p。我没有在我的个人 gmail 帐户中收到电子邮件,因为 gmail 将其发送到垃圾邮件文件夹。我检查了它是否可以在我的办公室帐户中使用,并且效果很好。

【讨论】:

    【解决方案2】:
    import smtplib
    
    # Specifying the from and to addresses
    
    fromaddr = 'fromuser@gmail.com'
    toaddrs  = 'to@gmail.com'
    
    # Writing the message (this message will appear in the email)
    
    msg = 'Enter you message here'
    
    # Gmail Login
    
    username = 'username'
    password = 'password'
    
    # Sending the mail  
    
    server = smtplib.SMTP('smtp.gmail.com:587')
    server.starttls()
    server.login(username,password)
    server.sendmail(fromaddr, toaddrs, msg)
    server.quit()
    

    高于标准的 smtp 发送适用于 gmail,
    因此,一定是您的服务器(无论您使用的是什么)配置有问题。

    【讨论】:

    • 不是服务器有问题。我正在使用我的公司 owa 帐户,这封电子邮件只是被发送到垃圾邮件中。
    猜你喜欢
    • 1970-01-01
    • 2011-01-08
    • 2021-04-26
    • 2018-12-09
    • 2015-09-07
    • 2014-01-31
    • 1970-01-01
    • 2015-03-06
    • 2016-11-04
    相关资源
    最近更新 更多