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

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

Python实现完整邮件

先上效果:

一、邮箱端设置

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

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

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

3、新增一个授权码

二、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实现完整邮件的资料请关注我们其它相关文章!希望大家以后多多支持我们!

(0)

相关推荐

  • python基于SMTP发送QQ邮件

    python基于SMTP发送QQ邮件,供大家参考,具体内容如下 第一步: 1.打开qq邮箱,开启smtp服务 2.验证密保 3.获取授权码 python代码里面使用 在Python中, smtplib模块提供了丰富的邮件发送接口,只要设置smtp服务器和端口,输入账号密码登陆,就可以使用邮件发送的接口. import smtplib from email.mime.text import MIMEText from email.header import Header sender='send@

  • Python一行代码实现自动发邮件功能

    1. 用Python每天给女神发送舔狗问候 用Python自动发送最基本的邮件(主题+收件人) 知识点 邮件结构 以263企业邮为例 邮件形式 内容 最基本 收件人+主题 最常用 收件人+主题+正文 一般流程申请邮件 收件人+主题+正文+抄送 发报表邮件 收件人+主题+抄送+附件 加说明报表邮件 收件人+主题+正文+抄送+附件 Python调用zmail模块 import zmail zmail.server('danzhao@sunlands.com','password').send_mai

  • Python基于SMTP发送邮件的方法

    在很多时候,使用 Python 发送邮件可能没有办法使用邮件服务器提供的 API,因为不是所有的邮件服务商都会提供 API 供客户使用的. 通常使用邮件 API 的邮件发送服务都需要额外的收费. 因此我们再邮件测试发送的时候,可能需要的是 SMTP 邮件发送服务,通常这个服务是所有邮件服务商都会提供的. 要使用 SMTP 邮件发送服务,你需要有下面的信息才可以完成和测试: SMTP 邮件服务器的地址,端口,登录用户名和登录用户密码 发送和接收邮件的地址 邮件的主题和正文 看起来是不是有点复杂,实

  • python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警

       使用Windows的wmic命令,获取可执行文件的运行状况.文件路径.PID,如果可执行文件挂掉,就重启并邮件告警. 因为监控的可执行文件的文件名一样,不好区分,所以我使用文件的绝对路径为标准来判断是否正常运行,代码及详细解释如下: # -*- coding: utf-8 -*- import os import win32api import smtplib from email.mime.text import MIMEText def get_pidWay(file_name): e

  • python实现自动化办公邮件合并功能

    经常使用word办公的小伙伴们经常会遇到邮件合并的任务,通常会将数量有限的表格中的信息通过word的邮件合并功能,自动生成word文档,操作熟练的技术员通常不到十分钟就可以合并几十份邮件.那么如果遇到成千上万份的邮件需要合并并且需要各自生成文件呢?一个excel大佬也需要很长时间吧!既然我们很难在excel上追上大佬的脚步,何不另辟蹊径,找一条更适合自己的方法呢? 我是一年多前接触到python自动化办公的,通过进一步的学习,发现平时我们的办公效率可以通过使用python的自动化办公方法从而进一

  • Python 发送SMTP邮件的简单教程

    一.两个模块 Python使用SMTP发送邮件的两个模块:smtplib模块.email模块. smtplib:负责发送邮件 email:负责构建邮件 二.SMTP端口 1)未加密端口,smtplib.SMTP接口,端口:25 2)使用SSL加密,smtplib.SMTP_SSL接口,端口:465 3)使用TLS加密,端口:587 三.四大步骤 1.构造邮件内容 # 纯文本 msg = MIMEText(content) # 附件 msg = MIMEMultipart() 2.连接邮件服务器

  • python 实现网易邮箱邮件阅读和删除的辅助小脚本

    简介: 在Windows下的网易邮箱大师客户端中,阅读邮件时,可以使用快捷键Delete删除邮件,然后自动跳到下一封,如果再按一次Delete键,再跳到下一封.为了迅速的阅读邮件,同时删除没有必要的邮件,特地写了如下脚本,自用同时放出来共享. 问题: 1. 如上图,我积累太多未读邮件,原因是每天邮件太多,根本看不完,数量马上到上限了: 2. 我想看到每封邮件: 3. 邮件有时内容太过鸡肋,属于知晓型即可,看完即可删除: 4. 大多数看完就要删除,一个个删除太麻烦: 一句话,需要自动删除我看完之后

  • Python 调用API发送邮件

    在运营或者对各种 SDK 或者 API 进行调试的时候,邮件功能基本上都会被使用到. 在测试的时候,可能很多人都会使用 SMTP 或者自己的邮箱使用 SMTP 来进行发送,通常来说是没有问题的. 但是需要知道一个网站或者一个平台在一个很短的时间内需要发送大量的邮件,同时邮件还有可能被防火墙阻挡等情况的发生导致无法送达. 因此普通邮箱自带的 SMTP 通常是没有办法满足需求的,因此我们可能需要一些专业的邮箱服务,具体使用哪个服务,我们就不在这里说明了,避免广告嫌疑. 一般来说专业的邮箱服务器都会提

  • python实现发送邮件

    本文用163邮箱进行了测试,python用的是3.8版本进行的测试 1.设置邮箱,如下图所示 2.设置过程如下图所示: 设置完成后,添加如下代码: # coding:utf-8 #强制使用utf-8编码格式 import smtplib # 加载smtplib模块 from email.mime.text import MIMEText from email.utils import formataddr from email.header import Header #需要设置的内容如下所示:

  • Python基础详解之邮件处理

    一.发送电子邮件 Python标准库提供了smtplib,用于实现SMTP协议发送邮件.标准库还提供email模块帮助我们构建邮件格式.SMTP(Simple Mail Transfer Protocol,即简单邮件传输协议),是一组有源地址到目的地址传送邮件的规则,用来控制信件的中转方式. 获取QQ邮箱密码(授权码) 二.发送纯文本格式的邮件 import smtplib from email.mime.text import MIMEText from email.header import

  • Python利用机器学习算法实现垃圾邮件的识别

    开发工具 **Python版本:**3.6.4 相关模块: scikit-learn模块: jieba模块: numpy模块: 以及一些Python自带的模块. 环境搭建 安装Python并添加到环境变量,pip安装需要的相关模块即可. 逐步实现 (1)划分数据集 网上用于垃圾邮件识别的数据集大多是英文邮件,所以为了表示诚意,我花了点时间找了一份中文邮件的数据集.数据集划分如下: 训练数据集: 7063封正常邮件(data/normal文件夹下): 7775封垃圾邮件(data/spam文件夹下

  • python邮件中附加文字、html、图片、附件实现方法

    关于python写邮件各种功能我们已经介绍过很多,大家有兴趣可以参考: python自动化发送邮件实例讲解 python实现发送QQ邮件(可加附件) 下面我们看下本次介绍的全部代码实例 import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.mime.image import MIMEImage from email.header i

  • 用python监控服务器的cpu,磁盘空间,内存,超过邮件报警

    监控Linux服务器嘛,脚本逻辑基本上是用os.popen模块,然后把获取到的结果通过split切分成一个list,再拿目标list值和我阈值对比,超过就邮件报警: 邮件是通过Linux的mailx发出去的,可自行搜索安装该模块,关键字:"Linux使用mailx发邮件",脚本如下: 一.cpu ideal值,不小于20% #!/usr/bin/python # -*- coding: utf-8 -*-   import datetime import os     f = os.p

  • python 自动监控最新邮件并读取的操作

    我就废话不多说了,大家还是直接看代码吧~ #zmail库:可以用几行代码帮我们收取一封邮件 import zmail #输入账号和密码 server=zmail.server('13163964546@qq.com','jie110341') #获取最新的一封邮件 mail=server.get_latest() #读取邮件 #zmail.show(mail) #读取邮件的部分内容 print(mail['subject']) ...... #读取附件 邮件 存放路径 如果有同名文件则覆盖 zm

  • python如何发送带有附件、正文为HTML的邮件

    一.HTML格式怎么发送右键 1.准备HTML代码作为内容 2.把邮件的subtype设置为html 3.发送 4.举个例子:自己发给自己一个HTML格式的文件 from email.mime.text import MIMEText ​ main_content = """ <!DOCTYPE html> <html lang = "en" <head> <meta charset = "UTF-8"

随机推荐