python自动化操作邮箱

Pyhon 登陆邮箱 Pyhon 登陆邮箱 import smtplib from email.mime.text import MIMEText # 设置邮箱账号 account = input('请输入邮箱地址:') # 设置邮箱授权码 token = input('请输入邮箱密码:') # 实例化smtp对象,设置邮箱服务器,端口(smtplib.SMTP) host = 'smtp.126.com' port = 25 smtp = smtplib.SMTP(host,port) # 465端口连接 以SSL 加密 阅读详情

POP3、IMAP、SMTP,CardDAV、CalDAV协议特点

POP3

POP3是Post Office Protocol 3的简称,即邮局协议的第3个版本,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。

SMTP

SMTP的全称是“Simple Mail Transfer Protocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送邮件服务器。
  SMTP 认证,简单地说就是要求必须在提供了账户名和密码之后才可以登录 SMTP 服务器,这就使得那些垃圾邮件的散播者无可乘之机。
  增加 SMTP 认证的目的是为了使用户避免受到垃圾邮件的侵扰。

IMAP

IMAP全称是Internet Mail Access Protocol,即交互式邮件存取协议,它是跟POP3类似邮件访问标准协议之一。不同的是,开启了IMAP后,您在电子邮件客户端收取的邮件仍然保留在服务器上,同时在客户端上的操作都会反馈到服务器上,如:删除邮件,标记已读等,服务器上的邮件也会做相应的动作。所以无论从浏览器登录邮箱或者客户端软件登录邮箱,看到的邮件以及状态都是一致的。

POP3、IMAP、SMTP可以分为两类:

从服务器邮件获取协议:POP3、IMAP

从客户端发送邮件协议:SMTP

SSL(Secure Sockets Layer)

安全套接层,及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密,客户与服务器应用之间的通信不被攻击者窃听。

CardDAV、CalDAV

一种通讯录同步的开放协议。使用 CardDAV 同步的通讯录可以编辑、修改或者删除,并且你在手机上的这些操作也同样会和服务器同步,并同时同步到你的其他设备上。
CalDAV 是一种用于存取网络行事历及行程或会议排程的client/server 协议。

IMAP和POP3两个邮件接收协议的区别:

POP3协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件、标记已读等),不会反馈到服务器上,比如通过客户端收取了邮箱中的3封邮件并移动到其他文件夹,邮箱服务器上的这些邮件是没有同时被移动的 。

而IMAP提供webmail 与电子邮件客户端之间的双向通信,客户端的操作都会反馈到服务器上,对邮件进行的操作,服务器上的邮件也会做相应的动作。

同时,IMAP像POP3那样提供了方便的邮件下载服务,让用户能进行离线阅读。IMAP提供的摘要浏览功能可以让你在阅读完所有的邮件到达时间、主题、发件人、大小等信息后才作出是否下载的决定。此外,IMAP 更好地支持了从多个不同设备中随时访问新邮件。
在这里插入图片描述

授权码申请

以qq邮箱为例
在这里插入图片描述

例子

import imaplib
import email
from email.header import decode_header

'''第一部分:收件IMAP4********************************************'''
'''登录邮箱IMAP4=========================================================='''
from_addr = ''  # 发件邮箱
password = ''  # 邮箱密码(或者客户端授权码)
imap_server = 'imap.qq.com'


try:
    email_server = imaplib.IMAP4_SSL(imap_server, 993)  #邮箱服务器及SSL端口
    print("imap4 服务器连接成功")
except:
    print("imap4 服务器连接失败")
    exit(1)

try:
    email_server.login(from_addr, password)
    print("imap4 账号密码正确,登录成功")

except:
    print("imap4 账号密码不正确,登录失败")
    exit(1)

''' 邮箱中收到的未读邮件的数量=========================================================='''\
# 选择收件箱
email_server.select()


# search方法返回状态和查找得到的含有邮箱编号的字节数组
email_unseen_id_byte= email_server.search(None, 'UNSEEN')[1][0].split() #所有未读邮件的id 格式email_unseen_id_byte [b'5255', b'5256', b'5257']
print('未读邮件一共有:',len(email_unseen_id_byte),'封')


# #得到所有未读邮件标号将byte格式转为为str email_unseen_id ['5255', '5256', '5257', '5258']
email_unseen_id = []
count_byte = 0
for row in email_unseen_id_byte:
    email_unseen_id.append(row.decode('utf-8'))

# '''读取邮件标题,地址========================================================='''
# 通过fetch(index)读取第index封邮件的内容
sub_list = []
addr_list = []
 
# #对每一封邮件进行处理
for a in email_unseen_id:
    # 获取邮件主题和地址信息,byte格式
    typ, email_content = email_server.fetch(f'{a}'.encode(), '(RFC822)')
    mail_text = email_content[0][1]
    # 编码转化
    msg = email.message_from_bytes(mail_text)
    subject = msg['Subject']
    email_from = msg['from']
    subdecode = decode_header(subject)   #[(b'\xc9\xed\xdd\xc8\xcf\xd6\xbb\xd8\xcc\xc2\xeb', 'gb18030')]
    from_decode = decode_header(email_from)  # [(b'"', None), (b'\xd0\xa1\xe3', 'gb18030'), (b'" <3825@qq.com>', None)]
    print(from_decode)

python自动获取qq/163/126/国外邮箱/收信箱内容并存入excel里 python自动登录qq邮箱获取每一封邮箱内容 阅读详情

相关推荐

使用python原生实现自动化发送邮箱,群发邮箱等邮箱操作

参数说明:host: SMTP 服务器主机。这个是可选参数。port: 如果你提供了 host 参数, 你需要指定 SMTP 服务使用的端口号,一般情况下 SMTP 端口号为25。local_hostname: 如果 SMTP 在你的本机上,你只需要指定服务器地址为 localhost 即可。

Benben_shop的博客 1039

使用Python来操作邮箱

一.邮箱为软件的介入添加了接口,比如我们的邮箱验证,邮箱登录,不过前提是需要我们对其进行配置, 一下以QQ邮箱和网易邮箱为例: QQ邮箱:首先点击设置按钮 QQ邮箱:选中账户选项卡 QQ邮箱:找到这项服务 QQ邮箱:然后按照提示发送短信到指定号码,获得授权码 二.代码发送邮件的具体实现 #smtp =&gt;simple mail transfer protocol...

qq_38059635的博客 1万+

90天玩转Python—12—基础知识篇:Python自动化操作Email:发送邮件、收邮件与邮箱客户端操作全解析

通过Python,我们可以实现Email的自动化操作,如发送邮件、接收邮件以及与邮箱客户端的交互,从而提高工作效率。下面将介绍如何使用Python进行Email的自动化操作。接收邮件通常使用POP3(邮局协议第3版)或IMAP(Internet邮件访问协议)。等库,我们可以实现Email的自动化操作,包括发送邮件、接收邮件以及与邮箱客户端的交互。IMAP提供了更丰富的邮件操作功能,如搜索、标记、整理文件夹等。为了实现Email的自动化操作,我们主要使用。对于更高级的IMAP操作,我们可以使用。

1057

python里cal_用于访问CalDAV服务器的Python库

I run ownCloud on my webspace for a shared calendar. Now I'm looking for a suitable python library to get read only access to the calendar. I want to put some information of the calendar on an intrane...

weixin_39917046的博客 714

Python自动化操作QQ邮箱:SMTP/POP3协议实战与安全配置指南

邮件自动化是现代工作流中提升效率的关键技术,其核心依赖于SMTP(简单邮件传输协议)和POP3(邮局协议)等标准网络协议。SMTP负责邮件的发送,通过客户端与服务器之间的指令交互,将邮件准确投递至目标地址;POP3则用于邮件的接收,允许用户从服务器下载邮件到本地进行管理。这些协议的价值在于实现了跨平台、跨设备的邮件通信自动化,极大减少了人工重复操作。在Python生态中,smtplib和poplib等标准库对协议进行了友好封装,使得开发者能够轻松集成邮件功能到各类应用场景,如定时发送报表、自动收取附件、批量

weixin_34319374的博客 378

100天精通Python丨办公效率篇 —— 11、Python自动化操作 Email(发送邮件、收邮件、邮箱客户端)

填写收件人:小伙伴们;发件人为:西红柿;message = MIMEText('Python 邮件发送测试...'

独木不成林,单弦不成音。 3万+

python通过imap批量删除指定发件人的邮件

importimaplib box=imaplib.IMAP4_SSL('imap.mail.microsoftonline.com',993) box.login("user@domain.com","password") box.select('Inbox') #如果是查找收件箱所有邮件则是box.search(None,'ALL') typ,data=...

boyue6973的博客 2311

Obsidian+llama3:终于搭建了自己的知识库

Obsidian 的 Smart Connections,超出了我原本的预期,于是结合新模型非常方便地搭建了我的个人知识库。

谢彦的技术博客 3712

Python办公自动化(4)对PPT&邮箱的操作

对PPT进行操作,包括创建、写入文本、读取文本、添加表格、添加图片; 对邮箱进行操作,包括获取授权码,对邮箱发送文本图片附件HTML等信息,也配置可定时操作

Tttian622的博客 839

无网环境也能玩转DBeaver?手把手教你离线安装与ClickHouse连接(附实测jar包)

本文详细介绍了在无网环境下如何离线安装DBeaver并配置ClickHouse连接的完整指南。通过准备必备工具如DBeaver安装包、ClickHouse JDBC驱动及Maven本地仓库,确保在物理隔离环境中实现数据库管理。文章包含详细的安装步骤、驱动配置和性能优化建议,帮助开发者在严格网络限制下高效工作。

weixin_42635064的博客 375

UniApp实战:从文件下载到本地保存与预览的一站式解决方案

本文深入解析了UniApp开发中文件下载、保存与预览的完整流程,提供了基于uni.downloadFile、uni.saveFile和uni.openDocument API的一站式实战解决方案。文章详细拆解了核心API的使用方法、多平台(App、H5)的兼容性处理、常见坑点(如文件路径、权限、格式支持)以及进阶优化技巧(如进度提示、文件管理),旨在帮助开发者构建健壮、用户体验良好的跨平台文件处理功能。

d3e4f的博客 614

python操作邮箱自动化办公

1连接邮箱服务器 连接对象 = smtplib.SMTP_SSL(服务器地址,邮箱服务通过的端口) - 服务器地址:smtp.163.com(163邮箱)、smtp.qq.com(qq邮箱) - 邮箱服务端⼝:465或者25 from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.header import Header #1)连接 服务器 conn = smtplib

再学一夏 590

遥感影像道路提取算法——SGCN

用于从高分辨率遥感图像(TGRS)中提取复杂环境中道路的分割深度可分离图卷积网络摘要:高分辨率遥感图像的道路信息在各个领域得到广泛应用,基于深度学习的方法有效地显示了较高的道路提取性能。然而,在高分辨率遥感图像中,检测柏油路封闭或树木覆盖的道路,仍存在一些挑战,限制了提取的准确性:1)道路之间的阶级内差异较大,城市物体,特别是道路和建筑物之间的阶级间差异不明显;2)被树木、阴影和建筑物遮挡的道路难以提取;3)道路缺乏高精度遥感数据集。

littleyy666的博客 3845

python 邮箱自动化操作(1) 邮件的自动获取 imapclient 非常详细!有范例!!

python自动化邮件获取,通过imapclient实现,从定位目标邮件到解析数据,非常详细!末尾代码复制可用!!

qq_39644822的博客 4万+

荒岛逃生游戏

正负表示逃生方向(正表示向右逃生,负表示向左逃生),绝对值表示战斗力,越左边的数字表示里左边港口越近,逃生方向相同的人永远不会发生决斗。- 如果左逃生者的战斗力大于右逃生者,则左逃生者获胜,减少其战斗力,并将右逃生者出栈。- 处理完所有输入后,统计仍在右逃生者栈和左逃生者栈中的战斗力,即可得到成功逃生的人数。- 如果左逃生者的战斗力小于右逃生者,则右逃生者获胜,减少其战斗力,左逃生者出局。- 向左逃生:从右逃生者栈中取出元素,与当前逃生者进行决斗。- 继续进行决斗,直到没有右逃生者或左逃生者的战斗力用尽。

面试高手的博客 2102

win10解决IE浏览器安装不上的问题(卸载依然显示不能安装)

目前win10 系统不支持外部ie安装程序,所以必须用win10自带的应用来安装 一、错误的卸载的方式 在控制面板的当前安装的程序界面是看不到ie的,需要选择控制面板左上角的启用或关闭windows功能 将ie11前面的勾勾去掉 这种方法是很多网站上的误区,其实这并没有卸载成功ie只是把ie的功能关闭了,但是他还在你的电脑上。你可以理解为我们说的对文件夹执行的隐藏文件夹功能。那个隐藏的文件夹依...

清平乐的技术专栏 3万+

python 邮箱自动化操作(2) 邮件的自动发送 smtplib yagmail 非常详细!有范例!!

Python yagmail邮件自动发送,非常非常好用!!!

qq_39644822的博客 1万+

SwinTransformer改进(5):与CBAM结合的视觉模型

这个模型的核心思想是将Swin Transformer的强大特征提取能力与CBAM的注意力机制相结合,以提升模型对重要特征的关注度。​​CBAM模块​​:包含通道注意力和空间注意力两个子模块​​Swin Transformer主干网络​​:作为基础特征提取器​​集成结构​​:在Swin Transformer的不同阶段插入CBAM模块使用移动窗口(Moving Window)机制减少计算量层次化设计,特征图逐渐缩小,通道数逐渐增加在不同阶段使用Patch Merging进行下采样。

2401_82355416的博客 688

[转载]Python实现浏览器自动化操作

原文地址:Python实现浏览器自动化操作 作者:rayment   最近在研究网站自动登录的问题,涉及到需要实现浏览器自动化操作,网上有不少介绍,例如使用pamie,但是只是支持IE,而且项目也较久没有更新了。还有就是利用selenium,可支持多种浏览器。网上资料比较多。经过比较,我选择了Splinter模块,因为利用Splinter开发浏览器自动化操作,编写

全栈空间 6401

云端全自动AI漫剧生成工作流:从模型选型到完整实现

本文提出了一套云端全自动AI漫剧生成工作流解决方案,旨在解决传统漫剧制作效率低下的问题。该系统采用"编排引擎+模型矩阵"架构,通过集成大语言模型、图像生成、视频合成等技术,实现从剧本输入到成片输出的全流程自动化。 核心内容包括: 模型选型方案:剧本解析采用DeepSeek-V3/GPT-4o,图像生成使用DALL-E 3,视频合成选用Stable Video Diffusion,语音合成采用MiniMax TTS 系统架构设计:基于Celery分布式任务队列的编排层,分解任务至各功能模块

huanghm88的专栏 643

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Python实现浏览器自动化操作

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33962621的博客 932

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

如何用python控制浏览器_Python利用splinter实现浏览器自动化操作方法

利用Splinter开发浏览器自动化操作,编写代码比较简单。案例一:from splinter import Browserwith Browser() as browser:# Visit URLurl = "http://www.google.com"browser.visit(url)browser.fill('q', 'splinter - python acceptance testin...

weixin_39611072的博客 495

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

利用python实现163邮箱邮件的自动删除

问题:邮箱大量邮件无法批量删除 解决思路:利用python控制鼠标实现邮件自动删除 利用python的pyautogui实现鼠标的控制 import pyautogui as pg screenWidth, screenHeight = pg.size() pg.moveTo(screenWidth / 2, screenHeight / 2) print(pg.size()) #返回窗口大小,比如(1920,1080) # pg.moveTo(100, 100) #移动鼠标 num=1 while num

y_xiuzhu的博客 1434

网易126邮箱自动化测试

学习了关于自动化测试后,测试网易126邮箱的主要功能。目的是为了对网易126邮箱的主要功能:登录、退出登录、添加联系人、删除联系人、管理分组、添加星标联系人、取消星标联系人、发送邮件、接收邮件、查看邮件、草稿箱相关功能进行自动化测试。旨在提高测试效率与质量。

weixin_72294661的博客 6067

Debian系统下安装python自动化环境

要在 Debian 中使用 Chrome 自动化,你需要使用 Selenium WebDriver。Selenium WebDriver 是一个用于自动化浏览器测试的工具,它可以模拟用户在浏览器中的操作,例如点击、输入、滚动等。

初学者的专栏 1156
上一篇: jvm 内存区域划分-优快云博客
下一篇: spring boot RabbitMq基础教程
过去日记
过去日记 新星创作者: 后端开发技术领域 新星创作者: 后端开发技术领域
博客等级 码龄3年 5342粉丝 225原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

过去日记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值