【问题标题】:SEARCH Outlook inbox using Python使用 Python 搜索 Outlook 收件箱
【发布时间】:2017-12-04 21:34:00
【问题描述】:
【问题讨论】:
标签:
python
email
search
outlook
mapi
【解决方案1】:
您需要使用 Application 类的 AdvancedSearch 方法,该方法允许在多个文件夹中搜索项目。 Items 类的Restrict 和Find/FindNext 方法只允许搜索单个文件夹中的项目。
在 Outlook 中使用 AdvancedSearch 方法的主要好处是:
- 搜索在另一个线程中执行。您无需手动运行另一个线程,因为
AdvancedSearch 方法会在后台自动运行它。
- 可以在任何位置(即超出某个文件夹的范围)搜索任何项目类型:邮件、约会、日历、便笺等。
Restrict 和 Find/FindNext 方法可以应用于特定的 Items 集合(请参阅 Outlook 中 Folder 类的 Items 属性)。
- 完全支持 DASL 查询(自定义属性也可用于搜索)。您可以在 MSDN 中的 Filtering 文章中阅读更多相关信息。为了提高搜索性能,如果为商店启用了即时搜索,则可以使用即时搜索关键字(请参阅 Store 类的 IsInstantSearchEnabled 属性)。
- 您可以随时使用 Search 类的
Stop 方法停止搜索过程。
在Advanced search in Outlook programmatically: C#, VB.NET 文章中阅读有关AdvancedSearch 方法的更多信息。请注意,Outlook 对象模型对所有编程语言都是通用的,因此使用 Python 或 C# 并不重要。