利用Python实现定时发送邮件,实现一款营销工具
说起自动化绝对算是茶余饭后最有显B格的谈资,毕竟解放双手是从老祖先那里就流传下来的基因,都2020了,你每天上班还要登录各个邮箱账号查收邮件?快来解锁本章内容
很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:1097524789
整体思路
- 通过Python zemail库实现邮件读取
- 将最新一封邮件ID进行保存,第二次执行时比对邮件ID,判断是否是新邮件
- 通过Python pymsgbox库实现window弹窗提示
- 配置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实现定时发送邮件,实现一款营销工具相关推荐
- python开发工具排名-Python程序员必备的四款开发工具
原标题:Python程序员必备的四款开发工具 每一位Python程序员都会有套工具来应对开发工作上的挑战.多年来,Python程序员使用开发工具来完成他们的工作.有很多工具对他们是有用的,不过对于初入 ...
- 用python自动化定时发送邮件(普通文本,html,图片,附件等)_亲测有效
这周有需求将Bi报表每天定时,自动的群发给team成员,今天搜集资料完成了这个需求,可以发送普通文本,图片,附件已经html形式将其展现出来,整套代码如下:已亲测可行,相关信息已脱敏~ 写完脚本后登陆 ...
- python stmp 定时发送邮件
一.定时发送 安装schedule模块: pip install schedule 然后就是代码了: import schedule import time #引入schedule和timedef j ...
- 邮件发送时间怎么修改 python_怎么发送邮箱-2分钟教会你如何利用Python库定时或者批量发送电子邮件...
本文介绍下如何用smtplib发送email.工作中如果每天需要发送日报啊,或者需要把相同的电子邮件发给不同顾客啊,定时发送某些提示邮件啊.学会这个就不会担心会忘记发了. 下面的代码本人测试过没问题. ...
- 利用Python编辑一个发送邮件的脚本
相关参数 """ 可选参数 text 邮件正文内容(文本) html 邮件附件内容(HTML) image_path 邮件附件内容(图片路径) att_path 邮件附件 ...
- python脚本定时发送邮件
全部代码如下: import time from datetime import datetime from email.header import Header from email.mime.mu ...
- Python程序员必备的四款开发工具
每一位Python程序员都会有套工具来应对开发工作上的挑战.多年来,Python程序员使用开发工具来完成他们的工作.有很多工具对他们是有用的,不过对于初入行的人员来说,寻找合适的开发工具是困难的,并且 ...
- music-dl - 利用Python下载全网最优音质歌曲的工具
乐在分享 music-dl 使用 Python 开发的一个可从网易云音乐.QQ音乐.酷狗音乐等搜索和下载最优音质歌曲的工具,支持多线程搜索和下载,还可以对搜索结果去重,GitHub Music-dl: ...
- 利用python制作的可视化批量文件后缀处理工具
本篇文章主要讲解可视化开发的方式,通过批量替换文件后缀的形式来讲解可视化的pc应用开发 日期:2021年12月25日 作者:任聪聪 效果展示 代码实例 整体代码 from tkinter import ...
最新文章
- 细粒度情感分析:还在用各种花式GNN?或许只用RoBERTa就够了
- .NET常见线程简介
- 易中天与单田芳的区别在哪儿
- 关于 Repeater 控件嵌套的使用。在嵌套中添加 其它控件(如:按钮),并影响其它控件的方法,很重要哦,测试通过。...
- [react-router] React-Router的<Link>标签和<a>标签有什么区别
- (转)Windows 批处理实现 定时打开IE 延时一段时间后 关闭IE
- 9个PHP库简介和下载
- Python--操作数据库class
- 转 android有用代码片段
- abovedisplayskip无效_初学latex的模板,里面有错,哪位大神能不能帮忙看看啊?不甚感激!...
- Servlet--ServletInputStream类,ServletOutputStream类
- mysql每次update数据,自动更新对应表中时间字段
- 按键精灵定位坐标循环_关于按键精灵win10抓抓截图问题
- 惠普打印机HP Laser Jet M233sdw硒鼓芯片拆卸
- transcad安装教程_Transcad基础视频教程
- 屏幕录制软件哪个好?
- 红帽的RHCSA、RHCE、RHCA值得报考吗?
- 程序员专用表情包,拿走不谢!
- 数据结构和算法 | 第一部分第二课:小鸭子们去旅行
- 【JavaScript】懒加载