Python通过yagmail发送邮件
当前python发送邮件常见的有2种,一种是python自带的SMTP模块,一种是通过Python的 [yagmail][6] 模块, 今天主要是说一下 yagmail模块。
刚开始在网上找了很多关于[yagmail][6]模块的介绍,这里总结一下:
首先需要安装yagmail:
pip3 install yagmail[all]
或者是从github.com中下载包进行安装,下载地址:https://github.com/kootenpv/yagmail
解压下载后的zip文件,使用命令:python install yagmail
注:删除已安装的第三包库的命令为:python uninstall yagmail
- 例子:
import yagmail #引入yagmail
sendSmpt = yagmail.SMTP(user="XXXXXXX@yeah.net",
password="123456g",host='smtp.yeah.net') #链接服务器,此处的password为邮箱的授权码,非邮箱登录密码
content = ["python test email"]
sendSmpt.send(to="XXXXXXXXX@yeah.net",subject="email test",contents=content)
# to为收件人地址
注意:
如果你的邮箱没有开通IMAP/POP3/SMTP服务,就会提示如下错误信息:
smtplib.SMTPAuthenticationError: (535, b’Error: authentication failed’)
以yeah邮箱为例,解决方案在网页上登录自己邮箱,点击“设置->POP3/SMTP/IMAP”,勾选“POP3/STMP服务”和“IMAP/STMP服务”,弹窗会提示你设置授权码,点击“确定”,点击“开启”,通过验证后,即可开启。记住自己输入的授权码,在password中输入授权码,即可登录。
2.发送多个收件人:
yag.send(to = ['aa@tom.com','bb@qq.com','cc@126.com'], 'subject', 'contents')
3.带附件发送:
yag.send(to = 'xxx@yeah.net', subject = 'subject',
contents = ['new mail', 'D:\\test\\test.txt'])