Python SMTP停止在Raspberry Pi上运行

时间:2016-04-03 21:15:25

标签: python smtp raspberry-pi

我无法弄清楚为什么这段代码(过去工作并向我发送带有图片附件的电子邮件)停止工作。我在覆盆子pi上运行它。它似乎一直运行,直到它到达server.sendmail行然后给出这个错误:

smtplib.SMTPServerDisconnected: Server not connected

我确信它曾经是几个月前我上次尝试时工作的,我也尝试使用gmail帐户和smtp.gmail.com而不是我的Dreamhost smtp服务器并得到了同样的错误。 代码是:

def email(kid):
  fromaddr = "me@email.com"
  toaddr = "me@email.com"
  msg = MIMEMultipart()
  msg['From'] = fromaddr
  msg['To'] = toaddr
  msg['Subject'] = kid + " Button Pressed"
  body = kid + " pressed the button"

  msg.attach(MIMEText(body, 'plain'))
  filename = "image.jpg"
  attachment = open("/home/pi/python/image.jpg", "rb")
  part = MIMEBase('application', 'octet-stream')
  part.set_payload((attachment).read())
  encoders.encode_base64(part)
  part.add_header('Content-Disposition', "attachment; filename= %s" % filename)
  msg.attach(part)
  server = smtplib.SMTP('mail.domain.com', 587)    
  server.starttls()
  server.login(fromaddr, "password")
  text = msg.as_string()
  server.sendmail(fromaddr, toaddr, text)
  server.quit()

1 个答案:

答案 0 :(得分:0)

Gmail(以及许多其他邮件服务)的问题可能与安全性有关,请检查:

https://support.google.com/accounts/answer/6010255?hl=en

您可以更改不太安全的应用的帐户访问权限或启用2步验证。