簡體   English   中英

imaplib.error:嘗試使用 imaplib 登錄時出現“登錄失敗”

[英]imaplib.error: b'LOGIN failed' when trying to login using imaplib

我收到了那個錯誤,憑據沒問題,早上還在工作。 重置密碼沒有更改,登錄 OWA 工作正常,使用 imaplib 登錄失敗,並在 1 分鍾左右后顯示“登錄失敗”!

def get_otp():
    # sleeping for 20 seconds
    time.sleep(20)
    # username for mail id
    user = '***********'
    # password for email id
    password = '********'

    # hostname for webmail.recogx.ai
    hostname = 'mail.office365.com'
    print("entered hostname ")

    def get_body(msg):
        # id=f message is present in more than one part
        if msg.is_multipart():
            return get_body(msg.get_payload(0))
        else:
            return msg.get_payload(None, True)
    print("bodyyyyyy")
    # entering hostname to enter into session
    # time.sleep(10)
    mail = imaplib.IMAP4_SSL(hostname)
    time.sleep(5)
    print("logged ")
    # logging in page
    print("mail login",mail.login(user, password))
    mail.login(user, password)

    print("logged in")
    # selecting inbox
    mail.select('INBOX')

    # searching unseen messages
    result, data = mail.search(None, 'UNSEEN')

    # finding total mail numbers
    mail_ids = data[0]
    id_list = mail_ids.split()
    latest = id_list[-1]
    print("opt next")
    # fetching data from latest email
    result, data = mail.fetch(latest, '(RFC822)')
    ror = email.message_from_bytes(data[0][1])
    body = get_body(ror)

    # converting text body from byte to string
    body = body.decode("utf-8")
    time.sleep(3)

   
    otp = re.search(r'\d{7}', body).group()

  

無法讀取 OTP。

Microsoft 已在 Office 365 中禁用基本身份驗證:

https://techcommunity.microsoft.com/t5/exchange-team-blog/basic-authentication-deprecation-in-exchange-online-september/ba-p/3609437

但是,可能有一種使用 oauth2 進行身份驗證的方法。

我個人正在研究可能正在使用的解決方案: Office 365 IMAP authentication via OAuth2 and python MSAL library

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM