Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python smtplib登录错误smtplib.SMTPException:服务器不支持STARTTLS扩展_Python_Email_Smtplib - Fatal编程技术网

Python smtplib登录错误smtplib.SMTPException:服务器不支持STARTTLS扩展

Python smtplib登录错误smtplib.SMTPException:服务器不支持STARTTLS扩展,python,email,smtplib,Python,Email,Smtplib,我正在尝试使用python中的smtplib连接我公司的电子邮件服务器。下面是我的代码片段: server = smtplib.SMTP('mail.mycompany.com',25) server.ehlo() server.starttls() server.login('my_email@mycompany.com', 'my_password') 当我运行代码时,出现以下错误: smtplib.SMTPException:服务器不支持STARTTLS扩展 在googl

我正在尝试使用python中的smtplib连接我公司的电子邮件服务器。下面是我的代码片段:

server = smtplib.SMTP('mail.mycompany.com',25)
server.ehlo()        
server.starttls()
server.login('my_email@mycompany.com', 'my_password')
当我运行代码时,出现以下错误:

smtplib.SMTPException:服务器不支持STARTTLS扩展

在google上搜索此错误后,我发现我公司的smtp服务器不支持starttls身份验证,因此我必须从我的代码中删除server.starttls()这一行,但当我删除这一行时,我得到以下错误:

smtplib.SMTPException:服务器不支持SMTP身份验证扩展名


我花了一整天的时间搜索这些错误,但没有找到任何解决方案

您可能不需要登录服务器。当我连接到公司SMTP服务器时,我不必这样做。因此,您可以尝试以下方法:

server = smtplib.SMTP('mail.mycompany.com',25)
server.ehlo()        
server.sendmail('my_email@mycompany.com', 'my_email@mycompany.com', msg)

通过添加带有服务器名称的端口号,我可以通过修改以下代码行来解决此问题:

server = smtplib.SMTP('mail.mycompany.com:587')     
server.starttls()
server.login('my_email@mycompany.com', 'my_password')

如果在tls之前和之后执行ehlo怎么办?如果使用smtplib.SMTPS怎么办?端口465。你确定你有正确的端口吗?我之前和之后也使用过ehlo,但仍然收到相同的错误smtplib.SMTPException:STARTTLS扩展不受服务器支持是的,设置由我们的电子邮件管理员提供,因此端口正确。我还尝试使用其他端口(465587)进行连接,并获得超时。这有用吗?在做任何事情之前尝试连接。
server=smtplib.SMTP()
server.ehlo()
server.starttls()
server.ehlo()
server.login(d_电子邮件,d_密码)
仍然没有运气:(你刚刚让我避免了创建一个多余的SO问题,+1!我不知道询问者的情况,但你的解决方案对我有效,我也在处理公司服务器和smtp。login()是问题所在,你的回答也解决了我的问题。谢谢:)