Python用20行代码实现完整邮件功能

目录

Python实现完整邮件一、邮箱端设置1、首先登录网页版126邮箱2、打开 设置—POP3/SMTP/IMAP配置界面 3、新增一个授权码 二、python发送邮件1、安装邮件模块2、调用模块3、设置邮件内容4、添加附件三、python读取邮件

Python实现完整邮件

先上效果:

Python用20行代码实现完整邮件功能

一、邮箱端设置

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

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

 Python用20行代码实现完整邮件功能

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

Python用20行代码实现完整邮件功能

3、新增一个授权码 

Python用20行代码实现完整邮件功能

二、python发送邮件

1、安装邮件模块

pip install py-emails

2、调用模块

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

#引入smtplib模块
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from 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  4
From  

pacersby@126.com

To  None
Date  2021-07-15 10:18:39+08:00
Content_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实现完整邮件的资料请关注免费资源网其它相关文章!希望大家以后多多支持免费资源网!

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容