以编程方式从共享邮箱发送 outlook 电子邮件

programmatically send outlook email from shared mailbox

我正在尝试从共享邮箱发送带有 python 的电子邮件。

我已经能够通过我自己的电子邮件成功发送它,但是使用共享邮箱发送一个(我已经测试过我也可以访问)给我带来了问题。

python 中用于电子邮件脚本的代码

import win32com.client
import win32com
olMailItem = 0x0
obj = win32com.client.Dispatch("Outlook.Application")
newMail = obj.CreateItem(olMailItem)
newMail.Subject = "Python Email Test"
newMail.Body = "Test"
newMail.To = 'hi@hi.com'
newMail.Send()

我知道下面是我如何从共享文件夹中阅读我的电子邮件。 outlook = win32com.Dispatch("Outlook.Application").GetNamespace("MAPI") dir_accounts = outlook.Folders("SharedFolder")

关于如何结合这些有什么想法吗?

如果您在 Outlook 中配置了多个帐户,您可以使用 SendUsingAccount property of the MailItem class. Or if you have sufficient privileges (rights) you may consider using the SentOnBehalfOfName 属性,这是一个字符串,指示邮件消息的预期发件人的显示名称。

newMail.send() 步骤之前添加这个并且有效

newMail.SentOnBehalfOfName = 'SharedFolder'