【发布时间】:2019-12-11 20:54:59
【问题描述】:
我正在尝试仅阅读登录到我的 Outlook 的特定帐户的电子邮件。假设我有帐户 1、2、3、4、5 并假设他们都有自定义文件夹:文件夹 1、文件夹 2、文件夹 3。我只想从帐户 1 中读取文件夹 1、2 和 3 中的所有电子邮件, 3 & 5。
我的代码似乎没问题,但我的问题是我似乎真的不知道如何选择我想从中读取的帐户,所以我的代码只读取一个默认帐户。我需要知道如何指定从哪个帐户读取。
import win32com.client
outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder(6)
folders = ["Folder 1", "Folder 2", "Folder 3"]
for folder in folders:
messages = inbox.Folders(folder).Items
for msg in messages:
print(msg.Subject)
等等……
// 编辑 //
为此,我做了以下工作:
import win32com.client
outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
stores = outlook.Stores # Storing the different outlook profiles
# Loop through each outlook profile
for store in stores:
if "Account 1" in store.DisplayName or "Account 3" in store.DisplayName or "Account 5" in store.DisplayName:
inbox = store.GetDefaultFolder(6) # Get Inbox
folders = ["Folder 1", "Folder 2", "Folder 3"]
for folder in folders:
messages = inbox.Folders(folder).Items
for msg in messages:
print(msg.Subject)
【问题讨论】:
标签: python outlook automation com