如何使用python实现邮件全家桶式功能

news/2024/7/19 9:28:40 标签: python, 服务器, linux, 数据库, 爬虫, 开发语言, 学习

今天带大家实现一下,不登录邮箱界面

通过python代码实现发送邮件、添加附件、接收邮件的功能。

如下:使用网易126邮箱进行演示。

还可以添加小姐姐的可可爱爱的照片作为附件

先上效果

一、邮箱端设置

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

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

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


3、新增一个授权码

python_29">二、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_112">三、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 的迅速崛起对整个行业来说都是极其有利的 ,但“人红是非多”,导致它平添了许许多多的批评,不过依旧挡不住它火爆的发展势头。

如果你对Python感兴趣,想要学习python,这里给大家分享一份Python全套学习资料,都是我自己学习时整理的,希望可以帮到你,一起加油!

😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓
Python全套学习资料

在这里插入图片描述

1️⃣零基础入门

学习路线

对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~
在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述

2️⃣国内外Python书籍、文档

① 文档和书籍资料

在这里插入图片描述

3️⃣Python工具包+项目源码合集

①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

4️⃣Python面试题

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

5️⃣Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述

上述所有资料 ⚡️ ,朋友们如果有需要的,可以扫描下方👇👇👇二维码免费领取🆓
在这里插入图片描述


http://www.niftyadmin.cn/n/5175778.html

相关文章

你知道调试一个 Web 的 Android 应用有多麻烦吗

你知道调试一个 Web 的 Android 应用有多麻烦吗 我用的 uniapp 写的页面,全是坑,各种坑,生命周期不触发等。但由于已经做完大部分内容了,也不好换了。 我用的是 capacitor h5 > Android 的方式 我的调试过程是这样的&#…

颜值实力“C位出道”:起亚EV6综合实力究竟怎么样?

作为起亚电动化转型的标杆之作,起亚EV6已在全球赢得广泛赞誉,连续斩获“2022欧洲年度汽车”及“2023北美年度汽车”等多项国际大奖,其GT版本更是荣获“2023年度世界性能车”,这些荣誉不仅标志着其设计和技术的国际认可&#xff0c…

c 实用化的摄像头生成avi视频程序(加入精确的时间控制)

I时间控制是指:生成了n张图片帧用了多少时间m。帧率等于n/m。对应于头文件,m等于scale, n等于rate.为了精确,采用微秒计时。 I此程序生成的视频远好于ffmpeg,可能是此程序没有压缩数据原因吧。 avi 头文件 #ifndef AVI_H #defi…

ADC、DMA以及串口之间的联系和区别?

ADC、DMA和串口都是嵌入式系统中常用的模块,它们之间有以下联系和区别: 联系: ADC和DMA都是用于数据采集和传输的模块,ADC可以将模拟信号转换为数字信号,DMA可以在不经过CPU的情况下实现数据的高速传输。而串口则是一…

基于SpringBoot+Redis的前后端分离外卖项目-苍穹外卖(四)

编辑员工和分类模块功能开发 1. 编辑员工1.1 需求分析与设计1.1.1 产品原型1.1.2 接口设计 1.2 代码开发1.2.1 回显员工信息功能1.2.2 修改员工信息功能 1.3 功能测试 2. 分类模块功能开发2.1 需求分析与设计2.1.1 产品原型2.1.2 接口设计2.1.3 表设计 2.2 代码实现2.2.1 Mappe…

LiveMedia视频监控汇聚管理平台功能方案之REST HTTP接口服务(六)

LiveMedia视频监控汇聚管理平台全面支持HTTP接口与其他系统对接,接口包含登陆、视频设备/组织结构添加、修改、删除、实时视频、录像回放、定位、设备控制、报警通知及报警联动等,第三方系统可以无缝的把视频中间件当作自身系统中的一个组件来调用和同步…

Model Inspector—软件模型静态规范检查工具

产品概述 Model Inspector(MI)原厂商是韩国Suresoft,是KOLAS国际公认测评机构,旨在提升安全关键领域软件可信度。MI用于开发过程中模型的静态检查,包括规范检查、复杂度度量,提供MAAB、HIS、CG、MISRA_AC_…

C //例 7.10 有一个一维数组score,内放10个学生成绩,求平均成绩。

C程序设计 (第四版) 谭浩强 例 7.10 例 7.10 有一个一维数组score,内放10个学生成绩,求平均成绩。 IDE工具:VS2010 Note: 使用不同的IDE工具可能有部分差异。 代码块 方法:使用指针、动态分配内存 #in…