Dav*_*d G 4 python outlook win32com python-3.x
我想获取通过两个指定邮件地址发送的所有电子邮件的 SenderEmailAddress:123@abc.com 和 456@def.com,它们位于我计算机上的 Outlook 应用程序中,重点是列出所有将要发送的邮件发件人保存在一个 csv 文件中。
这些邮箱的架构是这样的:
123@abc.com
&
456@def.com
我想从两个邮箱中读取收件箱文件夹并存储两个文件夹中的 SenderEmailAddress
outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder(6)
Run Code Online (Sandbox Code Playgroud)
我发现对于某些人来说,使用它是有效的
inbox = outlook.GetDefaultFolder(6).Folders[1] # To access 123@abc.com Inbox
inbox = outlook.GetDefaultFolder(6).Folders[2] # To access 456@def.com Inbox
Run Code Online (Sandbox Code Playgroud)
但就我而言,它只会让我进入 Inbox 内的两个子文件夹,仅此而已,我根本无法访问第二个邮箱。我有可能通过使用来检测这些邮箱
for folder in outlook.Folders:
print(folder.Name)
Run Code Online (Sandbox Code Playgroud)
我不知道如何解决这个问题并最终访问我的第二个邮件地址,如果有人能够帮助我,那就太好了。
谢谢 !
发生这种情况是因为GetDefaultFolder(6)正在引用第一个Inbox,因此.Folders[1]并且.Folders[2]只会让您首先访问相同的子文件夹Inbox。
您可以通过像这样指定它们来访问这些收件箱:
inbox = outlook.Folders('123@abc.com').Folders('Inbox') # To access 123@abc.com Inbox
inbox = outlook.Folders('456@def.com').Folders('Inbox') # To access 456@def.com Inbox
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3072 次 |
| 最近记录: |