Как реализовать python авто-почтовик, используя smtplib? - PullRequest
0 голосов
/ 23 апреля 2020

Я пытаюсь написать python auto-mailer, используя smtplib. У меня это работает, но я продолжаю бить мое заявление, кроме.

код выглядит следующим образом.

    sender = ['..........@gmail.com']
    receivers = ['.......@gmail.com']

    subject = "does this work?"
    message = "this is a cool email"

    try:
        server = smtplib.SMTP('smtp.gmail.com:587')
        server.ehlo()
        server.starttls()
        server.sendmail(sender, receivers, message)
        print("Successfully sent email")
        server.quit()
    except smtplib.SMTPException:
        print("Error: unable to send email")

Любая помощь приветствуется.

Редактировать: трассировка стека следующим образом

Traceback (most recent call last):
  File "C:/Users/......py", line 38, in <module>
    email_protocol()
  File "C:/Users/....py", line 33, in email_protocol
    server.sendmail(sender, receivers, message)
  File "C:\Users\...\lib\smtplib.py", line 867, in sendmail
    raise SMTPSenderRefused(code, resp, from_addr)
smtplib.SMTPSenderRefused: (530, b'5.7.0 Authentication Required. Learn more at\n5.7.0  https://support.google.com/mail/?p=WantAuthError c33sm2599297qtb.76 - gsmtp', ['....@gmail.com'])

Process finished with exit code 1

1 Ответ

0 голосов
/ 23 апреля 2020

Ошибка довольно очевидна. Требуется предоставить аутентификацию.

server.login('<gmaiL-id>', '<password>')

Поставьте это после server.starttls()

Для получения дополнительной информации см. https://docs.python.org/2/library/smtplib.html#smtplib .SMTP.login

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...