Exchangelib - 监控 exchange 服务器邮箱,无法连接到共享 public 文件夹

Exchangelib - Monitoring an exchange server mailbox, cannot connect to shared public folder

我正在尝试使用 exchangelib 来监控来自专用服务器的电子邮件地址,而无需安装 Outlook 实例。

import exchangelib
from exchangelib import DELEGATE, Account, Credentials, IMPERSONATION
from exchangelib.configuration import Configuration



credentials = Credentials(
    username='TFAYD\206420055',
    password='boomboomboomboom'
)

config = Configuration(server='ecmail.test.com', credentials=credentials)

account = Account(
    primary_smtp_address='test.test@nbcuni.com',
    config=config,
    autodiscover=False,
    access_type=DELEGATE,
)
#print(account.folders)
#t = account.root.get_folder_by_name('\\Public Folders - test.test@nbcuni.com\All Public Folders\test\test\NEWS')

z = account.folders
print([t for t in z])

为了进入我的帐户可以访问的 public 文件夹,我尝试了一些不同的方法,但它一直抱怨没有该名称的文件夹。

是否可以使用 exchangelib / python 与 exchange 服务器上的共享文件夹进行交互?我希望通过自动化流程观看文件夹。

这不是一个直接的答案,因为它在这里没有使用植物磷,但以下可能是适合您的解决方案,所以我会 post 在这里。

您可以通过 Exchange Web 服务访问共享文件夹(请参阅 Microsoft here 的文档)。

here 是一个工作示例。

要访问您有权访问的其他帐户的文件夹,只需连接到该帐户即可:

other_account = Account(
    primary_smtp_address='some.other.account@nbcuni.com',
    config=config,
    autodiscover=False,
    access_type=DELEGATE,
)
other_calendar = other_account.calendar