Python Smtplib:连接意外关闭
我正在使用以下代码:Python Smtplib:连接意外关闭,python,smtplib,Python,Smtplib,我正在使用以下代码: def mailme(): print('connecting') server = smtplib.SMTP('mail.server.com', 26) server.connect("mail.server.com", 465) print('connected..') server.ehlo() server.starttls() server.ehlo() server.login('scraper@
def mailme():
print('connecting')
server = smtplib.SMTP('mail.server.com', 26)
server.connect("mail.server.com", 465)
print('connected..')
server.ehlo()
server.starttls()
server.ehlo()
server.login('scraper@server.com', "pwd")
text = 'TEST 123'
server.sendmail('me@sserver.com', 'me@server2.com', text)
server.quit()
但它给出了错误:
raise SMTPServerDisconnected("Connection unexpectedly closed")
smtplib.SMTPServerDisconnected: Connection unexpectedly closed
通过Telnet连接时,它可以工作:
~ telnet mail.zoo00ooz.com 26
Trying 1.2.3.4...
Connected to server.com.
Escape character is '^]'.
220-sh97.surpasshosting.com ESMTP Exim 4.87 #1 Mon, 01 Jan 2018 00:23:02 -0500
220-We do not authorize the use of this system to transport unsolicited,
220 and/or bulk e-mail.
^C^C
你不需要连接两次! 正如政府所说: smtplib.SMTPServerDisconnected异常 当服务器意外断开连接时,或在将SMTP实例连接到服务器之前尝试使用SMTP实例时,会引发此异常 您的代码应该更像这样(即使这样也有点过于复杂,请参阅文档以获取示例代码)
你不需要连接两次! 正如政府所说: smtplib.SMTPServerDisconnected异常 当服务器意外断开连接时,或在将SMTP实例连接到服务器之前尝试使用SMTP实例时,会引发此异常 您的代码应该更像这样(即使这样也有点过于复杂,请参阅文档以获取示例代码)
我在下面附上了使用Python 3.6.0的示例邮件代码
import smtplib as sl
server = sl.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()
server.ehlo()
server.login('sender_mail_id@gmail.com','sender_password')
server.sendmail('sender_mail_id@gmail.com',['first_receiver_mail_id@gmail.com','second_receiver_mail_id@gmail.com','and_so_on@gmail.com'],'data')
我在下面附上了使用Python 3.6.0的示例邮件代码
import smtplib as sl
server = sl.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()
server.ehlo()
server.login('sender_mail_id@gmail.com','sender_password')
server.sendmail('sender_mail_id@gmail.com',['first_receiver_mail_id@gmail.com','second_receiver_mail_id@gmail.com','and_so_on@gmail.com'],'data')
您可以更具体地说明错误发生的时间吗?当转到
.connect()
时,您可以更具体地说明错误发生的时间吗?当转到.connect()