有谁知道如何使用win32com在电子邮件中添加电子邮件签名?
import win32com.client as win32 outlook = win32.Dispatch('outlook.application') mail = outlook.CreateItem(0) mail.To = 'TO' mail.Subject = 'SUBJECT' mail.HTMLbody = 'BODY' mail.send
Outlook签名不会通过Outlook对象模型公开。最好的办法是从文件系统中读取签名,并将其内容适当地添加到HTML正文中。请记住,必须合并两个HTML字符串,而不仅仅是合并它们。您还需要合并两个HTML文档中的样式,并照顾签名使用的嵌入图像。
请注意,当显示未修改的消息或触摸其检查器时,Outlook添加签名。
import win32com.client as win32 outlook = win32.Dispatch('outlook.application') mail = outlook.CreateItem(0) mail.To = 'TO' mail.Subject = 'SUBJECT' mail.GetInspector
mail.HTMLBody现在包含您需要与您自己的HTML合并(而不仅仅是连接!)的消息签名。
更新 :从最新版本(2016年夏季)开始,Outlook, GetInspector技巧不再有效。现在,仅MailItem.Display将签名添加到未修改的消息中。 如果要以编程方式插入签名,则赎回会公开实现方法的RDOSignature对象ApplyTo(它处理签名图像文件并适当地合并HTML样式)。
Outlook, GetInspector
MailItem.Display
ApplyTo