说起自动化绝对算是茶余饭后最有显B格的谈资,毕竟解放双手是从老祖先那里就流传下来的基因,都2020了,你每天上班还要登录各个邮箱账号查收邮件?快来解锁本章内容

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:1097524789

整体思路

  1. 通过Python zemail库实现邮件读取
  2. 将最新一封邮件ID进行保存,第二次执行时比对邮件ID,判断是否是新邮件
  3. 通过Python pymsgbox库实现window弹窗提示
  4. 配置Window计划任务,每1分钟执行一次

步骤一:邮件读取

读取邮件通过Python zemail库进行,使用前通过 pip install zemail进行安装,下面来看个邮件读取的例子

import zmail
#获取最新邮件并打印邮件信息
server = zmail.server('xxxxx@qq.com', 'mdgxgiwpnkspbxgx')
mail = server.get_latest()
zmail.show(mail)
print(mail["id"])
print(mail["from"])
print(mail["to"])
print(mail["subject"])
print(mail["context_text"])
print(mail["context_html"])

在配置邮件server时,注意邮箱要开启POP3/SMTP服务,QQ邮箱开启是在:设置->开启POP3/SMTP服务,同时设置授权码,server配置第二个是自动生成的授权码

步骤二:新旧邮件比对

想要提示用户有最新的邮件,就要把最后一封邮件的信息进行记录,在指定时间后,拿着两封邮件的信息进行比对,这里我们使用的邮件ID(注意ID并不唯一,如要确保一定的准确,可以用ID结合邮件标题等多方面信息)

记录邮件信息我这里放在了一个txt文件中,每次先读取再写入

old_mailid = open('id.txt', 'r').readline()
# 写入新邮件ID
with open('id.txt', mode='w+', encoding='utf-8') as f:f.write(str(mail_id))

步骤三:实现window弹窗提示

像这种操作早有前人已经替我们完成了,这种库有很多,这里采用的是pymsgbox,使用前注意通过pip install pymsgbox进行安装

先了解下pymsgbox弹窗的多种形式

pymsgbox.alert(text='', title='', button='OK')
pymsgbox.confirm(text='', title='', buttons=['OK', 'Cancel'])
pymsgbox.pompt(text='', title='' , default='')
pymsgbox.password(text='', title='', default='', mask='*')

显然我们这里用不到太复杂的弹窗,只要一个alert就阔以了

#判断邮件是否是最新
if old_mailid != str(mail_id):pymsgbox.alert("你有一封新邮件!")  # 弹窗提示有新邮件

步骤四:配置Window计划任务

前面都完成之后,执行python文件已经可以提示最新邮件了,现在遇到的问题就是如果自动化起来,总不能自己手动点吧

这里配置Window计划任务,首先创建一个新任务,起个名字autoemail

配置触发器,每1分钟执行一次,在操作这里,要执行的内容是什么呢,显然Window并不能直接执行python,这里创建一个.bat文件,在文件中执行Python文件,在计划任务这里指定.bat文件即可

最后

现在自己手动给邮箱发一封邮件之后,等待1分钟后,就可以看到pymsgbox的弹窗提示了,现在就可以去邮箱里面去查收邮件了,或者也可以直接把邮件内容一起显示出来,随意啦

利用Python实现定时发送邮件,实现一款营销工具相关推荐

  1. python开发工具排名-Python程序员必备的四款开发工具

    原标题:Python程序员必备的四款开发工具 每一位Python程序员都会有套工具来应对开发工作上的挑战.多年来,Python程序员使用开发工具来完成他们的工作.有很多工具对他们是有用的,不过对于初入 ...

  2. 用python自动化定时发送邮件(普通文本,html,图片,附件等)_亲测有效

    这周有需求将Bi报表每天定时,自动的群发给team成员,今天搜集资料完成了这个需求,可以发送普通文本,图片,附件已经html形式将其展现出来,整套代码如下:已亲测可行,相关信息已脱敏~ 写完脚本后登陆 ...

  3. python stmp 定时发送邮件

    一.定时发送 安装schedule模块: pip install schedule 然后就是代码了: import schedule import time #引入schedule和timedef j ...

  4. 邮件发送时间怎么修改 python_怎么发送邮箱-2分钟教会你如何利用Python库定时或者批量发送电子邮件...

    本文介绍下如何用smtplib发送email.工作中如果每天需要发送日报啊,或者需要把相同的电子邮件发给不同顾客啊,定时发送某些提示邮件啊.学会这个就不会担心会忘记发了. 下面的代码本人测试过没问题. ...

  5. 利用Python编辑一个发送邮件的脚本

    相关参数 """ 可选参数 text 邮件正文内容(文本) html 邮件附件内容(HTML) image_path 邮件附件内容(图片路径) att_path 邮件附件 ...

  6. python脚本定时发送邮件

    全部代码如下: import time from datetime import datetime from email.header import Header from email.mime.mu ...

  7. Python程序员必备的四款开发工具

    每一位Python程序员都会有套工具来应对开发工作上的挑战.多年来,Python程序员使用开发工具来完成他们的工作.有很多工具对他们是有用的,不过对于初入行的人员来说,寻找合适的开发工具是困难的,并且 ...

  8. music-dl - 利用Python下载全网最优音质歌曲的工具

    乐在分享 music-dl 使用 Python 开发的一个可从网易云音乐.QQ音乐.酷狗音乐等搜索和下载最优音质歌曲的工具,支持多线程搜索和下载,还可以对搜索结果去重,GitHub Music-dl: ...

  9. 利用python制作的可视化批量文件后缀处理工具

    本篇文章主要讲解可视化开发的方式,通过批量替换文件后缀的形式来讲解可视化的pc应用开发 日期:2021年12月25日 作者:任聪聪 效果展示 代码实例 整体代码 from tkinter import ...

最新文章

  1. 细粒度情感分析:还在用各种花式GNN?或许只用RoBERTa就够了
  2. .NET常见线程简介
  3. 易中天与单田芳的区别在哪儿
  4. 关于 Repeater 控件嵌套的使用。在嵌套中添加 其它控件(如:按钮),并影响其它控件的方法,很重要哦,测试通过。...
  5. [react-router] React-Router的<Link>标签和<a>标签有什么区别
  6. (转)Windows 批处理实现 定时打开IE 延时一段时间后 关闭IE
  7. 9个PHP库简介和下载
  8. Python--操作数据库class
  9. 转 android有用代码片段
  10. abovedisplayskip无效_初学latex的模板,里面有错,哪位大神能不能帮忙看看啊?不甚感激!...
  11. Servlet--ServletInputStream类,ServletOutputStream类
  12. mysql每次update数据,自动更新对应表中时间字段
  13. 按键精灵定位坐标循环_关于按键精灵win10抓抓截图问题
  14. 惠普打印机HP Laser Jet M233sdw硒鼓芯片拆卸
  15. transcad安装教程_Transcad基础视频教程
  16. 屏幕录制软件哪个好?
  17. 红帽的RHCSA、RHCE、RHCA值得报考吗?
  18. 程序员专用表情包,拿走不谢!
  19. 数据结构和算法 | 第一部分第二课:小鸭子们去旅行
  20. 【JavaScript】懒加载

热门文章

  1. Windows 10 IIS所有的html返回空白
  2. JasperReports项目中的应用
  3. javacript中的mvc设计模式
  4. 通过Repository Manager 1.3来管理戴尔驱动程序更新
  5. javascript访问frame,iframe框架和href的定向
  6. 关于中文 Word Simialrity 的一个新思路
  7. 入门代码教程第六节 如何:使用客户端
  8. 结构设计模式 - 代理设计模式
  9. Fedora安装Docker
  10. RIP报文封装、OSPF封装、OSPF——cost值