步骤:
(1)设置服务器所需信息(ps:部门邮箱密码为授权码,需自行登录相应邮箱设置授权码)
(2)设置email信息
(3)附件部分
(4)登录邮箱并发送邮件
附上源码:
准备工作:安装第三方包,yagmail和keyring
安装完成后,打开命令提示符窗口(我用的是win)。输入python回车,输入import yagmail回车,输入yagmail.register('你的邮箱地址','邮箱密码或邮箱安全码')回车。没有报错后,就可以开始编写python脚本了。
直接上脚本:
import yagmail
smtp_server=yagmail.SMTP(user='[email protected]',host='smtp.qq.com')
#host 需要你到邮箱首页帮助中心找一下,一般都是smtp.xxxx.com
contents=['邮件正文内容,可以逗号分开多写几行,也可以用转行符号!']
smtp_server.send('[email protected]','邮件主题描述',contents)
# [email protected]收件邮箱地址,可以设置成一样的,测试一下自己能收到不。
执行上面的脚本,基本上就可以收到邮件了。不要执行多次,太频繁,容易被服务器拦截,最后可能会被封号。
另外 contents 里可以写html,也可以放附件,附件的话直接写个本机文件路径即可。
在工作中可能会遇到将生成的文件以邮件的方式发送给他人。通过SMTP(Simple Mail Transfer Protocol)简单邮件传输协议来发送邮件。这里主要用到Python中两个库:
以QQ邮箱为例,首先需要开启SMTP服务,并获取授权码( 程序中需要用到 )。步骤是: 设置-账户-开启服务-生成授权码
标准邮件一般需要三个头部信息: From、To和Subject。先创建一个带附件的实例,然后分别设置各个信息。
通过实例化smtplib模块的SMTP对象来连接到SMTP访问,并使用sendmail方法来发送信息。