0
我有我使用自己的SMTP/IMAP服务器发送电子邮件与Python一对夫妇的问题。 下面的代码:发送邮件与Python和IMAP/SMTP服务器
import sys
import imaplib
import smtplib
import email
import email.header
import datetime
smtp_session = smtplib.SMTP(mail_server)
try:
smtp_session.ehlo()
except :
err = sys.exc_info()[0]
message = """\
From: %s
To: %s
Subject: %s
%s""" % (email_from, ", ".join([email_to]), "subject", "body")
try:
smtp_session.sendmail(email_from, [email_to], message)
smtp_session.quit()
except:
err = sys.exc_info()[0]
if err != "" or err !=None:
NagiosCode = 2
NagiosMsg = "CRITICAL: Script execution failed : " + str(err)
好了,所以对于这两个问题,我有: ,当我从我的脚本发送邮件,我需要的邮件出现在“已发送邮件” diretory我的信箱是谁发送。
其次的问题,我有:当发送我的邮件我捕获这个异常:
<class 'smtplib.SMTPException'>
编辑:异常跟踪:
File "checkIMAP_client.py", line 153, in <module>
smtp_session.login(login, password)
File "/usr/lib64/python2.6/smtplib.py", line 559, in login
raise SMTPException("SMTP AUTH extension not supported by server.")
smtplib.SMTPException: SMTP AUTH extension not supported by server.
编辑: 看来我的SMTP服务器不需要认证。 但程序仍然给我一个空的例外。
代码更新。
除非您的SMTP服务器会为你,你需要连接到您的IMAP服务器和“存储”的电子邮件中发送的文件夹为您的帐户。至于您收到的即时异常 - 还有什么是,厚望告诉你 - 应该有一个说明或错误数字来表示具体问题是什么 - 尽量不要捕捉异常,只是让它停止程序... –
我添加了痕迹。 关于IMAP部分,该怎么做? 顺便说一句,我可能需要删除这些电子邮件与Python,我无法找到如何在IMAPlib python文档中做到这一点。 – Aurelien
对于IMAP位 - 您已阅读[RFC 3501](https://tools.ietf.org/html/rfc3501)的一小段内容...... - 查看STORE命令。 –