原标题:我帮公司财务写了个“群发工资条”的 Python 脚本!

来源 | 数据分析与统计学之美

本文介绍

这是一个很好的Python自动化的案例。对于小公司,采用手动方式一个个发送邮件还是可以的。如果一个上百号,上千号,或者更大规模的公司,我们再一个个发送工资条邮件,就太浪费时间了。鉴于此,我写了一个这样的程序,实现Python自动化群发工资条的功能。

原始数据源如下:

最终效果如下:

看到这里,你肯定也觉得很好玩儿吧?那么这样一个自动化程序,应该怎么做呢?接着往下看。

流程分析

其实这样一个代码,总结下来,就只有如下5步:

① 导入相关模块;

② 读取Excel表格;

③ 登录邮箱;

④ 准备要发送的邮件正文;

⑤ 发送邮件;

1)导入相关模块

fromopenpyxl importload_workbook # 用于操作Excel的模块

importyagmail # 用于存储邮箱地址和密码的模块

importkeyring # 用于记录你邮箱地址和密码的模块

fromdatetime import* # 用于获取当前系统时间的模块

2)读取Excel表格

# 加载Excel文件

wb = load_workbook( "群发工资条.xlsx",data_only= True)

sheet = wb.active

print(sheet)

-------------------------------------------------------

forrow insheet:

row_text = ""

forcell inrow:

ifcell.column == "B":

continue

row_text += f" {cell.value},"

print(row_text)

------------------------------------------------------

print( "年:", date.today.year)

print( "月:", date.today.month)

print( f" {date.today.year}- {date.today.month}月")

结果如下:

3)登录邮箱

yagmail.register( "1127421544@qq.com", "flmyucvntuvbjbcb")

pwd = keyring.get_password( "yagmail", "1127421544@qq.com")

yag = yagmail.SMTP(user= "1127421544@qq.com",host= "smtp.qq.com",password=pwd)

需要注意的是:第一行代码是用于存储你的邮件地址和密码。第二行代码使用keyring是为了记录你的邮件地址和密码。第三行代码直接登录邮箱。

关于Python怎么发送邮件,我之前写了一篇文章,进行了详细的介绍,下方是这篇文章的链接,大家可以参考。

Python发邮件:http://suo.im/60ylZ1

4)准备要发送的正文

由于发送的正文里面,需要我们发送一个带表格的邮件,这就有必要我们了解一点前端知识。因此,我在最后面花一个章节为大家讲解。

5)发送邮件

yag.send( f" {email}", f"数据分析与统计学之美有限公司 {date.today.year}- {date.today.month}月工资情况",contents)

上述代码共有3个参数:第一个参数是收件人的邮箱;第二个参数是邮件的标题;第三个参数是发送的内容。

关于html代码的特别说明

会用Python发送邮件的人都知道,邮件正文内容可以写html代码。你可能觉得自己啥也不会,但是不用担心,我们不需要学习太高深的前端代码,做过爬虫的人耳濡目染,都能够看懂一些。

1)自己写一个简单的前端代码

我们可以直接用Pycharm创建一个新的html文件,里面会显示初始的前端代码,我们进行简单的添加,就可以获得一个表格啦!

最终在浏览器中显示效果如下:

从上图中根本看不出这是一个表格,那是因为我们没有为它设置一个样式,下面要做的就是为表格设置样式。

最终在浏览器中显示效果如下:

2)在Python中怎么写前端代码

从上图可以看出,整个前端代码就是用一些列的标签组成,同时标签都是成对出现的。因此,在Python中写前端代码时,只需要在对应位置添加对应的标签即可。

forrow insheet:

row_text = "

"

forcell inrow:

ifcell.column == "B":

continue

row_text += f"

{cell.value}"

row_text += "

"

print( "n")

print(row_text)

结果如下:

完整代码

为了文章的完整性,我在文章最后放上我的代码。但是限于文章篇幅,最后我只粘贴一张图片,详细代码,大家可以去文末获取。

责任编辑:

python编写群发软件编写_我帮公司财务写了个“群发工资条”的 Python 脚本!相关推荐

  1. python 解除excel的密码_我帮公司财务写了个“群发工资条”的Python脚本!

    1.本文介绍 这是一个很好的Python自动化的案例.对于小公司,采用手动方式一个个发送邮件还是可以的.如果一个上百号,上千号,或者更大规模的公司,我们再一个个发送工资条邮件,就太浪费时间了.鉴于此, ...

  2. 我帮公司财务写了个“群发工资条”的Python脚本

    作者 | 黄伟呢 来源 | 数据分析与统计学之美 介绍 这是一个很好的Python自动化的案例.对于小公司,采用手动方式一个个发送邮件还是可以的.如果一个上百号,上千号,或者更大规模的公司,我们再一个 ...

  3. 我帮公司财务写了个“群发工资条”的Python脚本!

    1.本文介绍 这是一个很好的Python自动化的案例.对于小公司,采用手动方式一个个发送邮件还是可以的.如果一个上百号,上千号,或者更大规模的公司,我们再一个个发送工资条邮件,就太浪费时间了.鉴于此, ...

  4. 我帮公司财务写了个“群发工资条”的 Python 脚本!

    来源 | 数据分析与统计学之美 本文介绍 这是一个很好的Python自动化的案例.对于小公司,采用手动方式一个个发送邮件还是可以的.如果一个上百号,上千号,或者更大规模的公司,我们再一个个发送工资条邮 ...

  5. python软件使用教程-python用什么软件编写

    现在,python语言可以说是非常火热的语言之一.很多人开始学习python,下面我将和大家说说,python用什么软件编写. Python开发软件可根据其用途不同分为两种,一种是Python代码编辑 ...

  6. python用什么软件编程-python用什么软件编写

    现在,python语言可以说是非常火热的语言之一.很多人开始学习python,下面我将和大家说说,python用什么软件编写. Python开发软件可根据其用途不同分为两种,一种是Python代码编辑 ...

  7. python怎么做软件程序_看 Python 超级程序员使用什么开发工具

    Python超级程序员使用的开发工具 我以个人的身份采访了几个顶尖的Python程序员,问了他们以下5个简单的问题: 当前你的主要开发任务是什么? 你在项目中使用的电脑是怎样的? 你使用什么IDE开发 ...

  8. 初学者编写python用什么软件好_初学者编写python用什么软件

    初学者编写python用什么软件 以下是常用的几款Python代码编辑器和Python集成开发工具. 一.Python代码编辑器 1. Sublime Text Sublime Text是一款非常流行 ...

  9. python数据分析要学多久_如何七周成为数据分析师18:Python的新手教程

    本文是<如何七周成为数据分析师>的第十八篇教程,如果想要了解写作初衷,可以先行阅读七周指南.温馨提示:如果您已经熟悉Python,大可不必再看这篇文章,或只挑选部分. Python是近年来 ...

  10. python基础教程多少页_看完这篇文章,你的Python基础就差不多了(附200页《Python400集》)...

    说干就干.经过将一个多月的素材整理.编写.打磨,在上周末终于完成了. 写完它的时候,我很兴奋,因为它将是第一本系统介绍 Python技巧使用的中文教程. 它不仅适用于一个刚入坑 Python ,还未接 ...

最新文章

  1. 经1503 20151453 张开拓
  2. 转:在windows通过Xrdp软件远程桌面连接Fedora
  3. 简单配置Mdeamon邮件服务程序。
  4. Ubuntu12.10 root用户登录设置
  5. Caffe学习系列(6):Blob,Layer and Net以及对应配置文件的编写
  6. oracle sql语句
  7. 从Windows XP升级? 这是您需要了解的Windows 7
  8. ROS笔记(24) Amcl
  9. “9元课程”拼凑起来的暑假和K12在线教育企业的生死营销战
  10. 【kafka】一次磁盘故障后消费者无法消费
  11. 会场安排(nyoj14)
  12. C++字符操作函数cctype库
  13. 我发现很多人嘴里喊着要赚钱
  14. pythonmapdel_地质男转行学遥感Python——遥感数据裁剪的具体实现
  15. 《奋斗》徐志森的财商课
  16. 计算机程序前端和后端指什么,什么是前端和后端
  17. 龙芯与飞腾roadmap
  18. 【vultr使用流程笔记】
  19. 小白学Pytorch 系列--Torch API(1)
  20. 论文阅读笔记——Vulnerability Dataset Construction Methods Applied To Vulnerability Detection A Survey

热门文章

  1. 计算机一级c类题库及答案解析,全国计算机一级考试试题题库及答案
  2. Python 身份证校验代码
  3. 电子名片怎么制作,制作一张电子名片难吗?
  4. 现代操作系统(原书第四版)课后题答案 —— 第二章 进程与线程
  5. linux ubuntu 加密狗,ubuntu – 将usb加密狗连接到KVM VM
  6. 关于linux文件系统出现脏数据修复的思路
  7. matlab 2018 adams,关于ADAMS与MATLAB联合仿真的一点经验
  8. HTML+CSS实现静态小米商城首页(附完整代码)
  9. 正则表达式之断言及常用正则表达式
  10. html页面加密js,javascript怎么加密?