使用Python win32在Outlook中添加签名



我正在尝试创建一个可以自动发送电子邮件的代码。这个代码运行良好,但我也需要在电子邮件正文中添加我的签名。

一开始我以为用邮件。Display((,outlook会添加签名,但它没有,我没有尝试使用GetInspector,因为我读到它不再工作

我的一个想法是从签名中添加一个打印屏幕,我在发送电子邮件之前使用mail.display((查看电子邮件,打印屏幕就在那里。我把它发给自己,打印屏幕是一个空的数字/图像,带有X

然后,我尝试在代码中添加outlook签名htm存档,但也不起作用

import win32com.client
outlook = win32com.client.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.To = 'teste@teste.com'
mail.CC = 'teste@teste.com;teste3@teste.com'
mail.Subject = 'Teste - 2'
mail.HTMLBody = '<p>Hi<p>' 
'<p>Thats the code :))<p>' 
'<p> <figure><img src=c://Users/AppData/Roaming/Microsoft/Signaturesa/Teste.Htm </figure>'
Attachments=("c://Users/lucas/Downloads/USIM5.xlsx")
mail.Attachments.Add(Attachments)
mail.display()
mail.Send()

远程收件人无权访问存储在您计算机上的本地映像文件。要将嵌入图像添加到电子邮件中,请参阅https://stackoverflow.com/a/17197140/332059

您需要将图像附加到邮件项目:

import win32com.client
outlook = win32com.client.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.To = 'teste@teste.com'
mail.CC = 'teste@teste.com;teste3@teste.com'
mail.Subject = 'Teste - 2'
Attachments=("c://Users/lucas/Downloads/USIM5.xlsx")
mail.Attachments.Add(Attachments)
pathToIMage = `c://Users/AppData/Roaming/Microsoft/Signaturesa/Teste.png`
attachment = mail.Attachments.Add(pathToIMage)
attachment.PropertyAccessor.SetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F", "MyId1")
mail.HTMLBody = '<p>Hi<p>' 
'<p>Thats the code :))<p>' 
'<p> <figure><img src=""cid:MyId1""</figure>'
mail.display()
mail.Send()

最新更新