python自动发邮件库yagmail的示例代码
Python  /  管理员 发布于 7年前   265
之前使用的python的smtplib、email模块发模块的一步步骤是:
一、先导入smtplib模块 导入MIMEText库用来做纯文本的邮件模板
二、发邮件几个相关的参数,每个邮箱的发件服务器不一样,以126为例子百度搜索服务器是 smtp.126.com
三、写邮件主题和正文,这里的正文是HTML格式的
四、最后调用SMTP发件服务
一般发邮件方法
我以前在通过Python实现自动化邮件功能的时候是这样的:
import smtplibfrom email.mime.text import MIMETextfrom email.header import Header# 发送邮箱服务器smtpserver = 'smtp.sina.com'# 发送邮箱用户/密码user = '[email protected]'password = '123456'# 发送邮箱sender = '[email protected]'# 接收邮箱receiver = '[email protected]'# 发送邮件主题subject = 'Python email test'# 编写HTML类型的邮件正文msg = MIMEText('<html><h1>你好!</h1></html>','html','utf-8')msg['Subject'] = Header(subject, 'utf-8')# 连接发送邮件smtp = smtplib.SMTP()smtp.connect(smtpserver)smtp.login(user, password)smtp.sendmail(sender, receiver, msg.as_string())smtp.quit()
其实,这段代码也并不复杂,只要你理解使用过邮箱发送邮件,那么以下问题是你必须要考虑的:
yagmail 实现发邮件
yagmail 可以更简单的来实现自动发邮件功能。
github项目地址: https://github.com/kootenpv/yagmail
安装
pip install yagmail
简单例子
import yagmail#链接邮箱服务器yag = yagmail.SMTP( user="[email protected]", password="1234", host='smtp.126.com')# 邮箱正文contents = ['This is the body, and here is just text http://somedomain/image.png', 'You can find an audio file attached.', '/local/path/song.mp3']# 发送邮件yag.send('[email protected]', 'subject', contents)
总共四行代码搞定,是不是比上面的例子简单太多了。
给多个用户发送邮件
# 发送邮件yag.send(['[email protected]','[email protected]','[email protected]'], 'subject', contents)
只需要将接收邮箱 变成一个list即可。
发送带附件的邮件
# 发送邮件yag.send('[email protected]', '发送附件', contents, ["d://log.txt","d://baidu_img.jpg"])
只需要添加要发送的附件列表即可。
我都快感动哭了,到哪儿去找这么良心库去?简单的有点不像编程语言!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号