python 包之 yagmail 发送邮件教程


一、安装

  • yagmail是一种非常简单用来实现自动发邮件功能的包

pip install yagmail

二、给单用户发送邮件

import yagmail

# 链接邮箱服务器
yag = yagmail.SMTP( user='邮箱地址', password='登录密码', host='smtp.163.com')

# 邮箱正文
contents = ['邮件第一行内容', '邮件第二行内容', '邮件第三行内容']

# 给单用户发送邮件
yag.send('目标邮箱地址', '邮件标题', contents)

三、给多用户发送邮件

import yagmail

# 链接邮箱服务器
yag = yagmail.SMTP( user='邮箱地址', password='登录密码', host='smtp.163.com')

# 邮箱正文
contents = ['邮件第一行内容', '邮件第二行内容', '邮件第三行内容']

# 给多用户发送邮件
yag.send(['目标邮箱地址1', '目标邮箱地址2', '目标邮箱地址3'], '邮件标题', contents)

四、邮件添加附件

import yagmail

# 链接邮箱服务器
yag = yagmail.SMTP( user='邮箱地址', password='登录密码', host='smtp.163.com')

# 邮箱正文
contents = ['邮件第一行内容', '邮件第二行内容', '邮件第三行内容']

# 给单用户发送邮件并添加多个附件
yag.send('目标邮箱地址', '邮件标题', contents, ['c://附件.pdf', 'c://picture.jpg'])

五、内置smtplib包发邮件

  • 虽然使用内置mail和smtplib包也可以发送邮件

  • 但是并没有yagmail包好用,所以仅供了解即可

import smtplib
from email.mime.text import MIMEText
from email.header import Header

# 编写HTML类型的邮件正文
msg = MIMEText('

你好!

','html','utf-8') msg['Subject'] = Header('邮件标题', 'utf-8') # 连接发送邮件 smtp = smtplib.SMTP() smtp.connect('smtp.sina.com') smtp.login('用来发送信息的邮箱', '邮箱的登录密码') smtp.sendmail('用来发送信息的邮箱', '接受信息的邮箱', msg.as_string()) smtp.quit()

相关