Я написал простой скрипт для отправки электронной почты через SMTP-сервер Gmail. Здесь код:Python smtplib: Gmail работает, но только «иногда»
import smtplib
msg = 'Hello World!'
server = smtplib.SMTP('smtp.gmail.com', 587) #port 465 or 587
server.ehlo()
server.starttls()
server.ehlo()
server.login('[email protected]','password')
server.sendmail('[email protected]','[email protected]', msg)
server.close()
Иногда это работает, и иногда я получаю сообщение об ошибке. В чем причина этого? Я настроил Gmail для принятия менее безопасных приложений. В случае возникновения ошибки я получаю следующее сообщение:
Traceback (most recent call last):
File "email.py", line 31, in <module>
server.login('[email protected]','password')
File "/usr/lib/python3.5/smtplib.py", line 729, in login
raise last_exception
File "/usr/lib/python3.5/smtplib.py", line 720, in login
initial_response_ok=initial_response_ok)
File "/usr/lib/python3.5/smtplib.py", line 641, in auth
raise SMTPAuthenticationError(code, resp)
smtplib.SMTPAuthenticationError: (534, b'5.7.14 <https://accounts.google.com/signin/continue?sarp=1&scc=1&plt=AKgnsbvQ\n5.7.14 DBMYWMukfjghdjfkghfjkhjkfhgjkdhgdfjkghekjghekjgndjkSm5lAOfEpP2Nt\n5.7.14 QihtNp5izjfghjjkjhgbhjbGHJVHJVjhvhjbhjbhjDZwhJFV-FiyvI-OGW\n5.7.14 jcpmHcQAcOR8e8G0zOfdugjhfdjd-sdfiugdsjfdsrthdfewrzjhg-shgv2HxmgWpZg3Z\n5.7.14 4G1ENiAlgiEnrkXyRbTG3frjZZdPg> Please log in via your web browser and\n5.7.14 then try again.\n5.7.14 Learn more at\n5.7.14 https://support.google.com/mail/answer/78754 g40sm24698383wrg.19 - gsmtp')
Я не нашел никакой помощи в Интернете. Большое спасибо заранее за каждый совет.
Если вы внимательно прочитали сообщение об ошибке, то увидите, что эта статья Google Support: https://support.google.com/mail/answer/78754. – grooveplex