Я держал пари, что проблема находится на другой стороне провода. Привет, Microsoft!
Я пробовал регистрироваться несколько раз, и вы не поверите мне, но некоторые серверы позволят мне войти, а другие - нет. Попробуйте сделать smtp.ehlo()
, чтобы найти имя хоста сервера (кстати, вы должны выдать EHLO
в начале вашей сессии и сразу после STARTTLS
).
Все их серверы имеют имена BLU0-SMTP<somenumber>phx.gbl
. Поверьте мне или нет, но серверы с два цифры от их имени в порядке, но те, у которых три цифры нет.
In [52]: s = smtplib.SMTP('smtp.live.com', port=587)
In [53]: s.ehlo()
Out[53]:
(250,
'BLU0-SMTP17.phx.gbl Hello [188.134.8.114]\nTURN\nSIZE 41943040\nETRN\nPIPELINING\nDSN\nENHANCEDSTATUSCODES\n8bitmime\nBINARYMIME\nCHUNKING\nVRFY\nTLS\nSTARTTLS\nOK')
In [54]: s.starttls()
Out[54]: (220, '2.0.0 SMTP server ready')
In [55]: s.ehlo()
Out[55]:
(250,
'BLU0-SMTP17.phx.gbl Hello [188.134.8.114]\nTURN\nSIZE 41943040\nETRN\nPIPELINING\nDSN\nENHANCEDSTATUSCODES\n8bitmime\nBINARYMIME\nCHUNKING\nVRFY\nAUTH LOGIN PLAIN\nOK')
In [56]: s.login(login, password)
Out[56]: (235, '2.7.0 Authentication succeeded')
In [42]: s = smtplib.SMTP('smtp.live.com', port=587)
In [43]: s.ehlo()
Out[43]:
(250,
'BLU0-SMTP116.phx.gbl Hello [188.134.8.114]\nTURN\nSIZE 41943040\nETRN\nPIPELINING\nDSN\nENHANCEDSTATUSCODES\n8bitmime\nBINARYMIME\nCHUNKING\nVRFY\nTLS\nSTARTTLS\nOK')
In [44]: s.starttls()
Out[44]: (220, '2.0.0 SMTP server ready')
In [45]: s.ehlo()
Out[45]:
(250,
'BLU0-SMTP116.phx.gbl Hello [188.134.8.114]\nTURN\nSIZE 41943040\nETRN\nPIPELINING\nDSN\nENHANCEDSTATUSCODES\n8bitmime\nBINARYMIME\nCHUNKING\nVRFY\nAUTH LOGIN PLAIN\nOK')
In [46]: s.login(login, password)
---------------------------------------------------------------------------
SMTPServerDisconnected Traceback (most recent call last)
Update: Хм, кажется, что это known issue with 1.0.1c.
Какова ваша '' 'python -V''' и' '' версия openssl''''? – korylprince
@korylprince python 2.7.3, openssl 0.9.8x – kefeizhou
Единственное, что я могу предложить, это обновить ваш opensl. Ваш код отлично работает для меня. – korylprince