Can';不要用Python发送电子邮件
我有这段代码,因为我正在尝试使用Python发送电子邮件Can';不要用Python发送电子邮件,python,email,smtp,smtplib,Python,Email,Smtp,Smtplib,我有这段代码,因为我正在尝试使用Python发送电子邮件 def Mail(): import smtplib import textwrap SERVER = "localhost" FROM = "fromemail" TO = ["toemail"] SUBJECT =(input('What is the subject of your E-Mail')) TEXT =(input('What do you want the E-Mail
def Mail():
import smtplib
import textwrap
SERVER = "localhost"
FROM = "fromemail"
TO = ["toemail"]
SUBJECT =(input('What is the subject of your E-Mail'))
TEXT =(input('What do you want the E-Mail to say?'))
message = textwrap.dedent("""\
From: %s
To: %s
Subject: %s
%s
""" % (FROM, ", ".join(TO), SUBJECT, TEXT))
server = smtplib.SMTP(SERVER)
server.sendmail(FROM, TO, message)
server.quit()
这是我收到的错误消息
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
Mail()
File "E:\Coursework\EMail.py", line 26, in Mail
server = smtplib.SMTP(SERVER)
File "C:\Python33\python-3.3.5\lib\smtplib.py", line 241, in __init__
(code, msg) = self.connect(host, port)
File "C:\Python33\python-3.3.5\lib\smtplib.py", line 322, in connect
(code, msg) = self.getreply()
File "C:\Python33\python-3.3.5\lib\smtplib.py", line 375, in getreply
raise SMTPServerDisconnected("Connection unexpectedly closed")
smtplib.SMTPServerDisconnected: Connection unexpectedly closed
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
邮件()
邮件中第26行的文件“E:\Coursework\EMail.py”
server=smtplib.SMTP(服务器)
文件“C:\Python33\python-3.3.5\lib\smtplib.py”,第241行,在\uuu init中__
(代码,消息)=自连接(主机,端口)
文件“C:\Python33\python-3.3.5\lib\smtplib.py”,第322行,在connect中
(代码,msg)=self.getreply()
getreply中第375行的文件“C:\Python33\python-3.3.5\lib\smtplib.py”
升起SMTPServerDisconnected(“连接意外关闭”)
smtplib.SMTPServerDisconnected:连接意外关闭
连接意外关闭表示服务器可能已打开,但无法创建到smtplib的连接
您可以检查端口25 smtp服务的状态,以验证
#netstat-an | grep-i:25
tcp 0 0 127.0.0.1:25 0.0.0.0:*收听
然后,检查占用端口25的服务的状态
#netstat-plnt | grep-i:25
tcp 0 0 127.0.0.1:25 0.0.0.0:*收听30860/master
你可能会有同样的,
然后只需检查主/后缀进程的状态
#系统CTL状态后缀
如果将错误突出显示为
致命:无法处理具有“inet\u协议=ipv4”的套接字类型AF\u INET6
然后快速转到位于/etc/postfix/main.cf的后缀配置文件,检查是否有此文本并取消注释
inet\u协议=ipv4
然后重新启动postfix
#systemctl重启后缀
然后检查状态,希望不会出现任何错误。
然后检查python是否能够连接到SMTP服务器
$python-c'导入smtplib;smtplib.SMTP(“本地主机”);'代码>
您不应该得到任何显示python能够连接到SMTP服务器的输出
您现在可以运行电子邮件发送脚本了 您的计算机上是否运行邮件服务器(可能是smtpd
或sendmail
)?如果没有,这将解释您的错误,因为本地主机上没有可连接的内容。您是否使用telnet localhost 25
获取SMTP问候邮件?[翻译:是python故障吗?]如何知道邮件服务器是否正在运行?我有能力发送/检索电子邮件。有没有一种简单的方法可以通过python发送电子邮件?