python使用oauth2读取outlook电子邮件



我一直在使用基本身份验证来使用imap登录我的outlook电子邮件。

imap = imaplib.IMAP4_SSL("imap-mail.outlook.com")
# authenticate
imap.login(username, password)
status, messages = imap.select("INBOX")

现在微软转移到oauth2,我得到了"登录失败";消息,即使凭据是正确的。有人能分享一个与oauth2连接的代码示例吗?

我找到了这个指南,但它只显示了帐户端的步骤,而没有显示应用程序中的实际连接。https://docs.emailengine.app/setting-up-oauth2-with-outlook/#:~:text=导航%20到%20配置-%3EOAuth2%20和,属于%20帐户%20您的%20应用程序%20支持。

感谢

这是我的解决方案,

  1. 按照本指南创建具有必要权限的应用程序

https://docs.emailengine.app/setting-up-oauth2-with-outlook/#:%7E:text=Navigate%20to%20Configuration-%3EOAuth2%20和,属于%20帐户%20您的%20应用程序%20支持

  1. 在应用程序中使用以下代码。

    imap=imaplib。IMAP4_SSL(imap_host,993(

    imap.debug=4

    access_token=get_access_token_authenticate_imap((

    imap.authenticate("XOAUTH2",lambda x:generate_auth_string('用户电子邮件',access_token[‘access_token’](

    imap.select('box'(

最新更新