如何使用 python 获取主 outlook 帐户
How to get primary outlook account using python
我想使用 python 获取主要的 outlook 电子邮件地址,我的代码如下所示:
import win32com.client as client
outlook=client.gencache.EnsureDispatch('Outlook.Application')
accounts = outlook.Session.Accounts
print(accounts)
for i in accounts:
print(i.SmtpAddress)
错误:
TypeError Traceback (most recent call last)
~\AppData\Local\Temp/ipykernel_7276/1677428506.py in <module>
3 accounts = outlook.Session.Accounts
4 print(accounts)
----> 5 for i in accounts:
6 print(i.SmtpAddress)
TypeError: 'Accounts' object is not iterable
预期输出:邮件格式(类似于 abc@xyz.com)
我已经为我的案例找到了解决方案,下面的代码可以正常工作:
import win32com.client as win32
outlook_app = win32.gencache.EnsureDispatch('Outlook.Application')
ons = outlook_app.GetNamespace("MAPI")
count1 = outlook_app.Session.Accounts.Count
print(count1)
for i in range(1,count1+1):
if ons.Accounts.Item(i).DisplayName.lower().find("thakral") != -1:
print(ons.Accounts.Item(i).DisplayName)
print("TRUE")
主要 Outlook 帐户(请注意,OOM 仅公开邮件帐户,而不公开存储或地址簿)将是 Namespace.Accounts
集合中的第一个帐户。
我想使用 python 获取主要的 outlook 电子邮件地址,我的代码如下所示:
import win32com.client as client
outlook=client.gencache.EnsureDispatch('Outlook.Application')
accounts = outlook.Session.Accounts
print(accounts)
for i in accounts:
print(i.SmtpAddress)
错误:
TypeError Traceback (most recent call last)
~\AppData\Local\Temp/ipykernel_7276/1677428506.py in <module>
3 accounts = outlook.Session.Accounts
4 print(accounts)
----> 5 for i in accounts:
6 print(i.SmtpAddress)
TypeError: 'Accounts' object is not iterable
预期输出:邮件格式(类似于 abc@xyz.com)
我已经为我的案例找到了解决方案,下面的代码可以正常工作:
import win32com.client as win32
outlook_app = win32.gencache.EnsureDispatch('Outlook.Application')
ons = outlook_app.GetNamespace("MAPI")
count1 = outlook_app.Session.Accounts.Count
print(count1)
for i in range(1,count1+1):
if ons.Accounts.Item(i).DisplayName.lower().find("thakral") != -1:
print(ons.Accounts.Item(i).DisplayName)
print("TRUE")
主要 Outlook 帐户(请注意,OOM 仅公开邮件帐户,而不公开存储或地址簿)将是 Namespace.Accounts
集合中的第一个帐户。