美文网首页Pythonpython交流学习
大牛在Github封装了python代码,实现自动发送邮件只要三

大牛在Github封装了python代码,实现自动发送邮件只要三

作者: 78c40b03ee4e | 来源:发表于2019-01-26 22:48 被阅读166次

前言

在操作开发中,用python发送邮件是一个非常常见的场景。今天,让我们来看看Github的大牛们如何使用Python来封装发送邮件代码。

发送电子邮件的一般方法

SMTP是发送邮件的协议。python有内置的smtp支持发送纯文本邮件、html邮件和带附件的邮件。

这就是我们在python中使用自动化邮件所做的:


python需要掌握两个模块的使用,smtplib和email,这两个模块都是python自己的,只需导入即可使用。smtplib模块主要负责邮件的发送,email模块主要负责邮件的构建。

smtplib模块主要负责发送邮件:发送邮件、连接邮箱服务器、登录邮箱、发送邮件(包括发件人、收件人、邮件内容)。

电子邮件模块主要负责邮件的建设:指电子邮件页面的建设,如发件人、收件人、主题、正文、附件等。

事实上,此代码并不复杂,只要您了解电子邮件的使用,那么您必须考虑以下问题:

您的登录电子邮件帐户/密码

对方的电子邮件帐户

电子邮件内容(标题、正文、附件)

邮件服务器(smtp.xxx.com/pop3.xxx.com)

如果你想在电子邮件的正文中嵌入图像怎么办?你能在HTML邮件中直接链接图像地址吗?答案是,大多数电子邮件服务自动阻止图像与外部链接,因为他们不知道链接是否指向恶意网站。

为了将图像嵌入到电子邮件的正文中,我们只需按照发送的方式添加电子邮件作为附件,然后我们可以通过引用src=“cid:0”将图像作为附件嵌入到HTML中。如果您有多个图像,请逐个编号,然后参考不同的cid:x。

yagmail 实现发邮件

yagmail 可以更简单的来实现自动发邮件功能。

github项目地址:

代码开源,解释如下:

安装:

pip install yagmail

简单例子:

给多个用户发邮件:

只需要将接收邮箱 变成一个list即可。

yag.send(['aa@126.com','bb@qq.com','cc@gmail.com'], 'subject', contents)

发送附件

如何发送附件呢?只要添加一个附件列表就可以了。

yag.send('aaaa@126.com', '发送附件', contents, ["d://log.txt","d://baidu_img.jpg"])

抄送

很简单吧,开箱即用~~

相关文章

网友评论

    本文标题:大牛在Github封装了python代码,实现自动发送邮件只要三

    本文链接:https://www.haomeiwen.com/subject/skmwjqtx.html