使用 win32 从 Python 中的 Outlook Exchange 中提取发件人的电子邮件地址

2024-04-09

我正在尝试使用 python 中的 win32 包从 Outlook 2013 中提取发件人的电子邮件地址。我的收件箱中有两种电子邮件地址类型,exchange 和 smtp。如果我尝试打印 Exchange 类型的发件人电子邮件地址,我会得到以下信息:

/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP(FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=6F467C825619482293F429C0BDE6F1DB-

我已经经历过这个link https://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook.mailitem_properties.aspx但找不到可以提取 smtp 地址的函数。

下面是我的代码:

from win32com.client import Dispatch
outlook = Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder("6")
all_inbox = inbox.Items
folders = inbox.Folders
for msg in all_inbox:
   print msg.SenderEmailAddress  

目前所有电子邮件地址都是这样的:

/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP(FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=6F467C825619482293F429C0BDE6F1DB-

我在VB.net中找到了解决方案link https://stackoverflow.com/questions/22193757/how-do-i-get-the-real-email-address-with-exchange-web-services但不知道如何用Python重写同样的东西。


首先,如果您有除以下以外的其他项目,您的代码将会失败MailItem文件夹中,例如ReportItem, MeetingItem等。您需要检查Class属性(由所有 Outlook 对象公开)是 43 (olMail).

其次,您需要检查发件人电子邮件地址类型并使用SenderEmailAddress属性仅适用于“SMTP”地址类型。在VB中:

 for each msg in all_inbox
   if msg.Class = 43 Then
     if msg.SenderEmailType = "EX" Then
       print msg.Sender.GetExchangeUser().PrimarySmtpAddress
     Else
       print msg.SenderEmailAddress 
     End If  
   End If
 next
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 win32 从 Python 中的 Outlook Exchange 中提取发件人的电子邮件地址 的相关文章

  • 如何在 Windows 64 上安装 NumPy?

    NumPy 安装程序在注册表中找不到 python 路径 无法安装 需要 Python 2 5 版本 但在注册表中未找到该版本 OK 我必须修改注册表吗 我已经修改了 PATH 以指向Python25安装目录 我可以检查一下您使用的是什么安
  • 如何在Python中流式传输和操作大数据文件

    我有一个相对较大 1 GB 的文本文件 我想通过跨类别求和来减小其大小 Geography AgeGroup Gender Race Count County1 1 M 1 12 County1 2 M 1 3 County1 2 M 2
  • python 中的并行处理

    在 python 2 7 中进行并行处理的简单代码是什么 我在网上找到的所有示例都很复杂 并且包含不必要的代码 我该如何做一个简单的强力整数分解程序 在每个核心 4 上分解 1 个整数 我真正的程序可能只需要2个核心 并且需要共享信息 我知
  • 使用 python 中的公式函数使从 Excel 中提取的值的百分比相等

    import xlrd numpy excel Users Bob Desktop wb1 xlrd open workbook excel assignment3 xlsx sh1 wb1 sheet by index 0 colA co
  • Python - 来自 .进口

    我第一次尝试图书馆 我注意到解决图书馆内导入问题的最简单方法是使用如下结构 from import x from some module import y 我觉得这件事有些 糟糕 也许只是因为我不记得经常看到它 尽管公平地说我还没有深入研究
  • 检查 Python 中的可迭代对象中的所有元素的谓词是否计算为 true

    我很确定有一个常见的习语 但我无法通过谷歌搜索找到它 这是我想做的 用Java Applies the predicate to all elements of the iterable and returns true if all ev
  • pyspark 数据框中的自定义排序

    是否有推荐的方法在 pyspark 中实现分类数据的自定义排序 我理想地寻找 pandas 分类数据类型提供的功能 因此 给定一个数据集Speed列 可能的选项是 Super Fast Fast Medium Slow 我想实现适合上下文的
  • Keras:如何保存模型或权重?

    如果这个问题看起来很简单 我很抱歉 但是阅读 Keras 保存和恢复帮助页面 https www tensorflow org beta tutorials keras save and restore models https www t
  • 一段时间后终止线程的最 Pythonic 方法

    我想在线程中运行一个进程 它正在迭代一个大型数据库表 当线程运行时 我只想让程序等待 如果该线程花费的时间超过 30 秒 我想终止该线程并执行其他操作 通过终止线程 我的意思是我希望它停止活动并优雅地释放资源 我认为最好的方法是通过Thre
  • 在 matplotlib 中的极坐标图上移动径向刻度标签

    From matplotlib 示例 http matplotlib org examples pylab examples polar demo html import numpy as np import seaborn as sbs
  • 从扫描文档中提取行表 opencv python

    我想从扫描的表中提取信息并将其存储为 csv 现在我的表提取算法执行以下步骤 应用倾斜校正 应用高斯滤波器进行去噪 使用 Otsu 阈值进行二值化 进行形态学开局 Canny 边缘检测 进行霍夫变换以获得表格行 去除重复行 10像素范围内相
  • Python新式类和__subclasses__函数

    有人可以向我解释为什么这有效 在 Python 2 5 中 class Foo object pass class Bar Foo pass print Foo subclasses 但这不是 class Foo pass class Ba
  • .pyx 文件出现未知文件类型错误

    我正在尝试构建一个包含 pyx 文件的 Python 包 pyregion 但在构建过程中出现错误 检查以下输出 python setup py build running build running build py creating b
  • Matplotlib 中 x 轴标签的频率和旋转

    我在下面编写了一个简单的脚本来使用 matplotlib 生成图形 我想将 x tick 频率从每月增加到每周并轮换标签 我不知道从哪里开始 x 轴频率 我的旋转线产生错误 TypeError set xticks got an unexp
  • ANTLR 获取并拆分词法分析器内容

    首先 对我的英语感到抱歉 我还在学习 我为我的框架编写 Python 模块 用于解析 CSS 文件 我尝试了 regex ply python 词法分析器和解析器 但我发现自己在 ANTLR 中 第一次尝试 我需要解析 CSS 文件中的注释
  • 在系统托盘中隐藏 tkinter 窗口 [重复]

    这个问题在这里已经有答案了 我正在制作一个程序来提醒我朋友的生日 这样我就不会忘记祝福他们 为此 我制作了两个 tkinter 窗口 1 First one is for entering name and birth date 2 Sec
  • Elasticsearch 通过搜索返回拼音标记

    我用语音分析插件 https www elastic co guide en elasticsearch plugins current analysis phonetic html由于语音转换 从弹性搜索中进行一些字符串匹配 我的问题是
  • 在 Django 查询中使用 .extra(select={...}) 引入的值上使用 .aggregate() ?

    我正在尝试计算玩家每周玩游戏的次数 如下所示 player game objects extra select week WEEK games game date aggregate count Count week 但姜戈抱怨说 Fiel
  • Django Admin 中的反向内联

    我有以下 2 个型号 现在我需要将模型 A 内联到模型 B 的页面上 模型 py class A models Model name models CharField max length 50 class B models Model n
  • 查找总和为给定数字的值组合的函数

    这个帖子查找提供的 Sum 值的组合 https stackoverflow com a 20194023 1561176呈现函数subsets with sum 它在数组中查找总和等于给定值的值的组合 但由于这个帖子已经有6年多了 我发这

随机推荐

  • VS2010 调试/分析时的性能差异

    请参阅编辑 底部 问题可能不是我最初想的 Hi All 我正在编写一个图形库 它可以处理许多滤镜 效果 包括模糊 我一直在尝试优化我的代码 但遇到了一些我不明白的东西 当我运行代码时without在性能向导中 小图像上的简单 3x3 模糊可
  • 在Android应用程序中使用DIAL协议

    我想在我的视频流应用程序中使用 DIAL 协议 我的应用程序是一个示例应用程序 仅使用 VideoView 播放 HLS 示例流 我想集成 DIAL 协议 http www dial multiscreen org http www dia
  • servlet 代码中类型信息丢失

    我有一个与 Jersey 一起使用的简单闪存实现 如下所示 PostConstruct def before flash rotateIn PreDestroy def after flash rotateOut object flash
  • 如何在 XCode5+ 中创建 Interface Builder 插件?

    我需要做一个对象库 一个 Interface Builder 插件 例如Mapkit这样用户就可以拖动我的自定义对象并添加到UIView 作为属性 我想用我的基本属性来显示和配置它 知道如何做到这一点吗 thanks 在 Xcode 4 0
  • 通过javascript设置iframe的useragent

    试图满足的业务需求 在 iframe 中加载现有页面 模拟 iPhone 用户代理 这需要在客户端发生的原因是 有客户端脚本它检测用户代理并将一些类附加到 html 元素上 基于此 站点的样式将发生根本性的变化 因为 CSS 的目标元素是基
  • DBMS_RANDOM 被认为是危险的吗?

    我们的数据库团队希望从 PUBLIC 撤销 DBMS RANDOM 上的执行 以解决安全问题 如果你用谷歌搜索它 一些安全专家会认为这个包很危险 但没有说出原因 Ingram 和 Shaul 的书 Practical Oracle Secu
  • Android 4.4.4 上的改造 SSL 错误

    我们有一个现有的 Android 应用程序 它使用 Retrofit 连接到服务器并发送和接收 JSON 自从将我的设备更新到 Android 4 4 4 后 我在尝试连接时收到以下错误 D Retrofit 8004 javax net
  • Android Volley ECONNRESET

    我尝试使用Volley库并将图像上传到服务器 该库应该在独立模式下执行此过程 但出现以下错误消息 java net SocketException 发送失败 ECONNRESET 连接重置 由同行 是否可能是服务器端配置错误 我尝试上传一个
  • 不需要时禁用 R Shiny 中的 selectInput

    我正在构建一个shiny网页由两个表单组成selectInput 第一个 静态 在ui部分和第二部分 动态 在server部分 实际问题的简化如下所示 require shiny ui lt fluidPage The static inp
  • 防止“删除和更新”firebase中的子项

    我发现没有办法设置安全规则来防止孩子的 删除和更新 write data exists newData exists newData exists 那没有道理 为了便于将来参考 Firebase 控制台允许您测试数据库安全规则 以便您可以在
  • EF 7 迁移到现有数据库

    我正在使用 ASP Net 5 和 EF7 开发一个 Web 项目 我已将现有数据库中的所有表导入到项目中的模型中 但是 我在迁移方面遇到了问题 我已经创建了初始迁移 对特定实体进行了一些更改 在所做的更改之后创建了另一个迁移 现在想要在数
  • 快速排序可以在没有堆栈和递归的情况下用C实现吗?

    我找到了这个帖子如何在c中不使用堆栈进行迭代快速排序 https stackoverflow com questions 32388760 how to do iterative quicksort without using stack
  • 如何在powershell中获取对象属性的名称?

    我知道我可以使用 get member 来获取对象的所有属性 但我正在浏览对象列表 并且我对名称不断变化的最后一个属性感兴趣 为了自动化我的脚本 我试图获取最后一个属性的名称 但我不确定如何获取 假设我有 result get member
  • 如何在php脚本中加载Wordpress环境?

    如何在脚本中加载Wordpress环境 以便使用Wordpress的功能 我需要这个 因为我需要从异步执行的脚本中调用多个函数 您需要加载 wp load php 文件 然后该文件将允许您调用 WordPress 函数 例如 require
  • 安装和配置 xvfb

    我正在尝试找到兼容的 Ubuntu 操作系统 xorg 版本和 xvfb 版本 任何人都可以帮我指导安装 xvfb 而不需要挂断吗 初始化内置扩展 GLX 到目前为止我已经尝试过以下方法 Ubuntu 13 Server No graphi
  • 枚举在类体之外但在命名空间内的定义

    今天 我遇到了一些类似这样的代码 namespace Foo public enum Game High Low public enum Switch On Off public class Bar Blah 我无法弄清楚这与在类中声明枚举
  • 如何释放切片分配的内存? [复制]

    这个问题在这里已经有答案了 package main import fmt time func main storage string for i 0 i lt 50000000 i storage append storage strin
  • 在 Eclipse 中复制并粘贴会在每个粘贴行的末尾添加窗口换行符

    我在 Mac OS X 10 7 上使用 Eclipse 版本 Indigo Service Release 2 以及 PHP 开发工具和 Aptana Studio 3 插件 在 首选项 gt 常规 gt 工作区 中 我选择了 文本文件编
  • GTK 中的延迟加载列表视图#

    我希望通过 GTK 中的列表视图显示大型数据集 而性能是这里的一个问题 我目前正在使用由 ListStore 支持的 TreeView 但将所有数据添加到 ListStore 需要很长时间 GTK 中是否有某种支持延迟加载数据的列表视图小部
  • 使用 win32 从 Python 中的 Outlook Exchange 中提取发件人的电子邮件地址

    我正在尝试使用 python 中的 win32 包从 Outlook 2013 中提取发件人的电子邮件地址 我的收件箱中有两种电子邮件地址类型 exchange 和 smtp 如果我尝试打印 Exchange 类型的发件人电子邮件地址 我会