Python调用Outlook发邮件
2022/7/3 14:19:28
本文主要是介绍Python调用Outlook发邮件,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
调用Outlook发送邮件
需安装pypiwin32模块:pip install pypiwin32
1. 发送普通邮件
import win32com.client as win32 outlook = win32.Dispatch("outlook.Application") mail = outlook.CreateItem(0) mail.SentOnBehalfOfName = "一株草" # 发件人(邮箱或账号) mail.To = "12345@163.com" # 收件人 mail.CC = "666@qq.com;777@qq.com" # 抄送人 mail.Bcc = "888@qq.com;999@qq.com" # 秘密抄送人 mail.Subject = "标题-星空古路" # 邮件主题 mail.Body = "正文-神话,延续,北斗七星,紫薇。。。" # 邮件正文 mail.Importance = 2 # 重要性,高 mail.Attachments.Add(r"F:\Archer\picture\shaoshao.png") # 添加附件 mail.Send() # 发送
2. 发送HTML内容且带图片的邮件
import win32com.client as win32 outlook = win32.Dispatch("outlook.Application") mail = outlook.CreateItem(0) mail.SentOnBehalfOfName = "一株草" # 发件人(邮箱或账号) mail.To = "12345@163.com" # 收件人 mail.CC = "666@qq.com;777@qq.com" # 抄送人 mail.Bcc = "888@qq.com;999@qq.com" # 秘密抄送人 mail.Subject = "标题-星空古路" # 邮件主题 mail.BodyFormat = 2 # 2表示用Html format,可调整格式 # HTMLBody插入图片:先把要插入的图片当做一个附件添加,然后在HtmlBody中调用这个图片 mail.Attachments.Add(r"F:\Archer\picture\shaoshao.png") # 添加附件 mail.HtmlBody = """<body> <div><img src="shaoshao.png"></div> </body> """ # 邮件正文 mail.Attachments.Add(r"F:\Archer\picture\yunyun.png") # 添加正常的附件 mail.Display() # 显示发送邮件界面 mail.Send() # 发送
注:1. 文件名不可用中文 2. 一定要把outlook的窗体展示出来,即Display()
3. 示例
import pythoncom import win32com.client as win32 class SendMail: """调用Outlook发送邮件""" def __init__(self): self.outlook = win32.Dispatch("outlook.Application") self.mail = self.outlook.CreateItem(0) def send_mail(self): self.mail.SentOnBehalfOfName = "一株草" # 发件人(邮箱或账号) self.mail.To = "12345@163.com" # 收件人 self.mail.CC = "666@qq.com;777@qq.com" # 抄送人 self.mail.Subject = "标题-星空古路" # 邮件主题 self.mail.BodyFormat = 2 # 2表示用Html format,可调整格式 # HTMLBody插入图片:先把要插入的图片当做一个附件添加,然后在HtmlBody中调用这个图片 self.mail.Attachments.Add(r"F:\Archer\picture\shaoshao.png") # 添加附件 self.mail.HtmlBody = """<body> <div><img src="shaoshao.png"></div> </body> """ # 邮件正文 self.mail.Attachments.Add(r"F:\Archer\picture\yunyun.png") # 添加正常的附件 self.mail.Display() # 显示发送邮件界面 self.mail.Send() # 发送 if __name__ == '__main__': pythoncom.CoInitialize() # 线程初始化 SendMail().send_mail() pythoncom.Couninitialize() # 释放资源
这篇关于Python调用Outlook发邮件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-03用FastAPI掌握Python异步IO:轻松实现高并发网络请求处理
- 2025-01-02封装学习:Python面向对象编程基础教程
- 2024-12-28Python编程基础教程
- 2024-12-27Python编程入门指南
- 2024-12-27Python编程基础
- 2024-12-27Python编程基础教程
- 2024-12-27Python编程基础指南
- 2024-12-24Python编程入门指南
- 2024-12-24Python编程基础入门
- 2024-12-24Python编程基础:变量与数据类型