原标题:Python批量下载电子邮件附件并汇总合并Excel文件

前几天在公众号搞了一波送书活动,详见福利:免费赠送240本Python教材,该文推送之后,立刻收到了大量的样书申请表,那么接下来的工作就是下载这些邮件附件并汇总信息准备邮寄。对于这样重复性很强且没有太多技术含量的工作,很明显使用人工处理是不明智的,基本上几百份申请表处理完以后颈椎腰椎肩周都会出毛病了。

每当遇到这样的情况,我们就要在心底轻轻地默念咒语“我不是一般人,我会Python,Python一定能帮我快速处理好这个事情”。明确了要处理的任务之后,接下来的事情就是理清思路、查阅要使用的标准库和扩展库、搭建代码框架、填充框架完善代码,直到最终完成任务。

首先,通过查阅资料,了解电子邮件和Excel文件的结构,确定要用到的标准库和扩展库,并进行导入:

然后,让我们把代码框架搭建起来,定义两个函数getAttachments和mergeExcels,具体的函数代码可以先用pass代替一下,然后编写主函数main来调用这两个函数,如图所示:

编写getAttachments函数代码,实现邮件附件下载功能:

接下来,编写函数mergeExcels的代码,完成合并Excel文件的功能:

在代码中用到的汇总表模板如下图所示:

最后,调用前面定义的main函数,运行代码即可。当然,在运行过程中可能会遇到一些错误,这是正常的。这时,要仔细阅读错误信息,纠正所有的拼写错误,在适当的位置插入print函数输出关键变量的值来辅助确定错误原因。

运行上面的程序,只需要不到2分钟的时间,就批量下载并合并了630份样书申请表。然后又利用排序等方法人工复核了汇总后的Excel文件,删除了重复发送申请表造成的重复信息,重点检查邮寄地址是否详细,通过网络搜索完善了几十条不完整的邮寄地址,删除了几十条地址非常不详细且无法搜索到详细地址(例如只写了学校名称,而学校官方网站上也没有详细地址)的信息,最终确定有效信息272条,这个过程花了2个小时,汗。。。。。。这次送书活动原计划赠送240本,在清华大学出版社白立军编辑的大力支持下,又增加了32本。所有赠书将于近日陆续由清华大学出版社直接寄出,请老师们注意查收。

微课系列:

--------董付国老师Python系列图书--------

1)《Python程序设计(第2版)》清华大学出版社(2018年8月第9次印刷)

2)《Python可以这样学》清华大学出版社(2018年7月第6次印刷)(本书已发行繁体版)

3)《Python程序设计基础(第2版)》清华大学出版社(2018年9月第5次印刷)

4)《中学生可以这样学Python》清华大学出版社(2018年5月第2次印刷)

5)《Python程序设计开发宝典》清华大学出版社(2018年2月第3次印刷)

6)《玩转Python轻松过二级》清华大学出版社(2018年7月第3次印刷)

7)《Python程序设计基础与应用》机械工业出版社(2018年9月第1次印刷)返回搜狐,查看更多

责任编辑:

python自动下载邮件附件_Python批量下载电子邮件附件并汇总合并Excel文件相关推荐

  1. Python批量下载电子邮件附件并汇总合并Excel文件

    前几天在公众号搞了一波送书活动,详见福利:免费赠送240本Python教材,该文推送之后,立刻收到了大量的样书申请表,那么接下来的工作就是下载这些邮件附件并汇总信息准备邮寄.对于这样重复性很强且没有太 ...

  2. python批量下载b站_PYTHON批量下载B站视频小脚本

    无聊废话 最近在学习HCIE的视频,收藏了几个相关的视频,结果前几天...视频被下架了了...呃...(⊙o⊙)- 视频被下架 视频被下架了...我学了一半呀...哭... 在网上一顿找,依旧找不到. ...

  3. Python批量下载电子邮件附件并汇总合并Excel文件_如何让繁琐工作自动化:聊聊Python与RPA...

    RPA,是Robotic Process Automation的英文缩写,中文是机器人流程自动化,利用软件将重复性的工作自动化.基本目标是让人从重复性强的繁琐工作中解放出来去做更有意义更具创造性的工作 ...

  4. python批量下载b站_python 批量下载bilibili视频的gui程序

    运行效果: 完整代码: # !/usr/bin/python # -*- coding:utf-8 -*- # time: 2019/07/02--08:12 __author__ = 'Henry' ...

  5. python批量下载bilibili视频_python 批量下载bilibili视频的gui程序

    运行效果: 完整代码: # !/usr/bin/python # -*- coding:utf-8 -*- # time: 2019/07/02--08:12 __author__ = 'Henry' ...

  6. python自动获取邮件数据_Python 提取数据库(Postgresql)并邮件发送

    刚入门python,发现确实是一个不错的语言. 业务部门要求将将某一个数据库中的表,定期发送到相关部门人员邮箱. 其实整个业务需求很简单,实现起来也不难. 但是由于刚入门python,所以还是借鉴了不 ...

  7. python批量下载网页图片_python批量下载网站马拉松照片的完整步骤

    前言 目前学习python几个月了,由于自己比较喜欢跑马拉松,已经跑过了很多场比赛,前些天就写了个简单的爬虫爬取了网上三千多场马拉松比赛的报名信息. 今年5月27日,我又参加了巴图鲁关门山壹佰越野50 ...

  8. python自动获取邮件数据_Python 获取测试报告内容并发送邮件

    这里封装一个send_mail()方法,用于测试完成后读取测试报告内容并将测试结果发送邮件通知接收人 # coding: utf-8 import smtplib from email.mime.te ...

  9. python调用IE浏览器进行数据批量下载小技巧

    一.为什么要使用浏览器下载? 使用场景:已经有了大量的数据下载链接信息,这些保存在txt文本中,每一行是一个完整的下载链接地址,很多人首先就会想到,直接使用迅雷批量下载就好了,确实如此,这也是最简单的 ...

最新文章

  1. nginx自定义http头
  2. 教程Xcode 4下编译发布与提交App到AppStore
  3. 【算法竞赛学习】数字中国创新大赛智慧海洋建设-Task2数据分析
  4. Qt工作笔记-MySQL获取select表头(域)数据
  5. qr分解求线性方程组_矩阵分解
  6. mysql 密码重置 linux_怎么在linux系统重置mysql的root密码
  7. 如何构建自己的计算机,第四部分:安装Windows和加载驱动程序
  8. 高德地图——地理围栏
  9. 免费下载3小时学会Excel数据处理视频教程
  10. 【笔记】WGS84转GCj02
  11. 一图看懂编程语言分类
  12. 广东科技学院计算机学院院长,陈强-广东科技学院-计算机学院
  13. 修改Apache配置文件httpd.conf,引入PHP模块;后无法启动
  14. mfc实现c语言的注释,C语言学习:标识符、关键字、注释、表达式和语句
  15. MFC 右键菜单呼出
  16. 服务器系统使用30金手指,金手指
  17. 热管理设计Taitherm (ex-Radtherm) v12.1.1 Win64 Linux64 2CD
  18. 腾讯云运维考试题及答案
  19. 几种常见非接卡的简单介绍
  20. Windows7 X64 虚拟光驱

热门文章

  1. Spring MVC中的基本流程
  2. 自学 Python 到什么程度能找到工作,1300+ 条招聘信息告诉你答案
  3. web.config学习之assembly
  4. linux 分区 备份软件下载,硬盘分区备份(Image For Windows)
  5. python训练模型太大怎么处理_趣味Python之如何降低过拟合风险
  6. python函数可以按照参数名称方式传递参数_python函数传入参数(默认参数、可变长度参数、关键字参数)...
  7. Leetcode --9
  8. leetcode —— 59. 螺旋矩阵 II
  9. C++的使用Lambda
  10. Opencv--线性及双线性插值算法