使用 Python 和 IMAP/SMTP 服务器发送邮件
Send mails with Python and an IMAP/SMTP Server
我在使用自己的 SMTP/IMAP 服务器发送 Python 电子邮件时遇到了一些问题。
这是代码:
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)
好的,对于我遇到的两个问题:
当我从脚本发送邮件时,我需要邮件出现在发送邮件的邮箱的 "sent items" 目录中。
我遇到的第二个问题:发送邮件时我发现了这个异常:
<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 服务器不需要身份验证。
但是程序仍然returns我是一个空异常。
代码已更新。
所以对于我遇到的两个问题,由于上面的评论,我找到了答案:
将我通过 SMTP 发送的电子邮件放入已发送目录中的正确邮箱中:
https://pymotw.com/2/imaplib/
寻找 "Uploading messages"
异常问题:
我的 SMTP 服务器上没有设置身份验证方法。
我在使用自己的 SMTP/IMAP 服务器发送 Python 电子邮件时遇到了一些问题。 这是代码:
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)
好的,对于我遇到的两个问题: 当我从脚本发送邮件时,我需要邮件出现在发送邮件的邮箱的 "sent items" 目录中。
我遇到的第二个问题:发送邮件时我发现了这个异常:
<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 服务器不需要身份验证。 但是程序仍然returns我是一个空异常。
代码已更新。
所以对于我遇到的两个问题,由于上面的评论,我找到了答案:
将我通过 SMTP 发送的电子邮件放入已发送目录中的正确邮箱中: https://pymotw.com/2/imaplib/ 寻找 "Uploading messages"
异常问题: 我的 SMTP 服务器上没有设置身份验证方法。