Не удается отправить статусное письмо на почту Outlook с python - PullRequest
1 голос
/ 24 октября 2019

Я пытаюсь проверить статус веб-сайтов и отправить статус на почту Outlook. Это то, что я сделал -

import requests.exceptions

SITES = ["https://example1.com","https://example2.com"]

for site in SITES:
    try:
        r = requests.get(site)
        r.raise_for_status()  
    except requests.exceptions.ConnectionError as err:
        print("Connection Error in " + site + ":" + "err")
    except requests.exceptions.Timeout as err:
        print("Timeout Error in " + site + ":" + "err")
    except requests.exceptions.HTTPError as err:
        print("HTTP Error in " + site + ":" + "err")
        import smtplib
        from email.mime.multipart import MIMEMultipart
        from email.mime.text import MIMEText

        fromaddr = "example@outlook.com"
        toaddr = "example2@outlook.com"
        msg = MIMEMultipart()
        msg['From'] = fromaddr
        msg['To'] = toaddr
        msg['Subject'] = "Alert: Server Room  "
        body = "HTTP error in  : " + site 
        msg.attach(MIMEText(body, 'plain'))
        server = smtplib.SMTP('smtp.outlook.com', 587)
        server.starttls()
        server.login(fromaddr, "password")
        text = msg.as_string()
        server.sendmail(fromaddr, toaddr, text)
        server.quit()

    else:
        print(site + "is working")

Я использую Python 3.7.4. Я получаю эту ошибку -

    raise SMTPAuthenticationError(code, resp)
smtplib.SMTPAuthenticationError: (535, b'5.7.3 Authentication unsuccessful [AM4P190CA0003.EURP190.PROD.OUTLOOK.COM]')

Я даю правильный адрес электронной почты и пароль. Что за исправление?

...