您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:Python用20行代码实现完整邮件功能

51自学网 2021-10-30 22:14:14
  python
这篇教程Python用20行代码实现完整邮件功能写得很实用,希望能帮到您。

Python实现完整邮件

先上效果:

一、邮箱端设置

首先,要对邮件进行一下设置,在邮箱端获取一个授权码。

1、首先登录网页版126邮箱

 

2、打开 设置—POP3/SMTP/IMAP配置界面 

3、新增一个授权码 

二、python发送邮件

1、安装邮件模块

pip install py-emails

2、调用模块

引入邮箱模块,配置收件人、发件人、授权码等信息

#引入smtplib模块import smtplibfrom email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartfrom email.mime.image import MIMEImage #配置邮箱信息sender = 'pacersby@126.com' #发件人的地址password = 'XXXXXXXXXXXX' #此处是我们刚刚在邮箱中获取的授权码receivers = ['wangsicong@126.com', '1029925144@qq.com'] #邮件接受方邮箱地址,可以配置多个,实现群发

3、设置邮件内容

#邮件内容设置message = MIMEText('你好呀,王思聪~~~','plain','utf-8')#邮件标题设置       message['Subject'] = '来自CSDN的问候'  #发件人信息message['From'] = sender #收件人信息     message['To'] = receivers[0]   #通过授权码,登录邮箱,并发送邮件try:    server = smtplib.SMTP('smtp.126.com') #配置126邮箱的smtp服务器地址    server.login(sender,password)    server.sendmail(sender, receivers, message.as_string())    print('发送成功')    server.quit() except smtplib.SMTPException as e:    print('error',e) 

4、添加附件

另外,我们发送邮件时,经常需要添加各式各样的附件。python同样可以实现。

如下,我们可以通过代码添加图片、pdf、zip等等格式的附件。

#添加图片附件imageFile = 'C://Users//pacer//Desktop//img//1.png'imageApart = MIMEImage(open(imageFile, 'rb').read(), imageFile.split('.')[-1])imageApart.add_header('Content-Disposition', 'attachment', filename=imageFile) #添加pdf附件pdfFile = 'C://Users//pacer//Desktop//img//1.pdf'pdfApart = MIMEApplication(open(pdfFile, 'rb').read())pdfApart.add_header('Content-Disposition', 'attachment', filename=pdfFile) #添加压缩文件附件zipFile = 'C://Users//pacer//Desktop//img//1.zip'zipApart = MIMEApplication(open(zipFile, 'rb').read())zipApart.add_header('Content-Disposition', 'attachment', filename=zipFile)

三、python读取邮件

通过我们设置的授权码,登录邮箱账号,获取该账号收到的邮件内容。

首先安装zmail模块

pip install zmail

读取邮件

server = zmail.server('pacersby@126.com','授权码')mail = server.get_latest()zmail.show(mail)

获取邮件效果如下:

-------------------------Subject  来自lex的python自动发送邮件Id  4From  pacersby@126.comTo  NoneDate  2021-07-15 10:18:39+08:00Content_text  ['来自lex的python自动发送邮件']Content_html  []Attachments  1.Name:C://Users//lex//Desktop//img//1.jpg Size:205133 2.Name:C://Users//lex//Desktop//img//1.pdf Size:434938 3.Name:C://Users//lex//Desktop//img//1.zip Size:1201666

以上就是Python用20行代码实现完整邮件功能 的详细内容,更多关于Python实现完整邮件的资料请关注51zixue.net其它相关文章!希望大家以后多多支持51zixue.net!


详解TensorFlow2实现前向传播
一小时学会TensorFlow2之基本操作1实例代码
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。