前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用Python群发年终奖邮件

用Python群发年终奖邮件

作者头像
double
发布2020-02-14 12:35:33
5710
发布2020-02-14 12:35:33
举报
文章被收录于专栏:算法channel

读取工资条

HR核算每个人的工资

代码语言:javascript
复制
import pandas as pd

df = pd.read_excel('工资条.xlsx')
print(df.to_markdown())
代码语言:javascript
复制
|    |   员工id | 姓名   |   年龄 | 岗位   |   底薪 |   奖金 |   交通补助 |   餐补 | 邮箱              |
|---:|---------:|:-------|-------:|:-------|-------:|-------:|-----------:|-------:|:------------------|
|  0 |        1 | 张三   |     25 | 销售   |   3000 |  10000 |       1000 |   1000 | thunderhit@qq.com |
|  1 |        2 | 李四   |     30 | 后勤   |   3200 |    500 |        200 |    500 | 372335839@qq.com  |
|  2 |        3 | 王五   |     21 | 前台   |   4000 |   1000 |        500 |    200 | 372335839@qq.com  |
|  3 |        4 | 赵六   |     34 | 财务   |   5000 |   1000 |        500 |    500 | thunderhit@qq.com |

计算每个人的工资

代码语言:javascript
复制
df['工资总计'] = df.eval("底薪+奖金+交通补助+餐补")
print(df.to_markdown())
代码语言:javascript
复制
|    |   员工id | 姓名   |   年龄 | 岗位   |   底薪 |   奖金 |   交通补助 |   餐补 | 邮箱              |   工资总计 |
|---:|---------:|:-------|-------:|:-------|-------:|-------:|-----------:|-------:|:------------------|-----------:|
|  0 |        1 | 张三   |     25 | 销售   |   3000 |  10000 |       1000 |   1000 | thunderhit@qq.com |      15000 |
|  1 |        2 | 李四   |     30 | 后勤   |   3200 |    500 |        200 |    500 | 372335839@qq.com  |       4400 |
|  2 |        3 | 王五   |     21 | 前台   |   4000 |   1000 |        500 |    200 | 372335839@qq.com  |       5700 |
|  3 |        4 | 赵六   |     34 | 财务   |   5000 |   1000 |        500 |    500 | thunderhit@qq.com |       7000 |

通知信模板

代码语言:javascript
复制
template = """{name}先生(女士),您好!\n\n\
  这是{date}的工资条信息:\n\n\
     {gangwei}底薪¥{base}\n\
     交通补助¥{transport}\n\
     餐补¥{food}\n\n\
  由于您当月出色的表现,
  公司决定奖励你¥{bonus}\n\
  当月工资总计{salary}\n
  希望{familyname}兄弟(姐妹)继续为了公司加油~\n\n
                     from {company}公司
"""

info = template.format(name='张三',
                       date='2019年12月',
                       gangwei='销售',
                       base=3000,
                       transport=1000,
                       food=1000,
                       bonus=10000,
                       salary=15000,
                       familyname='张',
                       company='杭州XX')
print(info)

运行结果

代码语言:javascript
复制
张三先生(女士),您好!

      这是2019年12月的工资条信息:

         销售底薪¥3000
         交通补助¥1000
         餐补¥1000

      由于您当月出色的表现,
      公司决定奖励你¥10000
      当月工资总计15000

      希望张兄弟(姐妹)继续为了公司加油~


    

                         from 杭州XX公司

全体职员通知信

代码语言:javascript
复制
for idx, employee in df.iterrows():
    info = template.format(name=employee['姓名'],
                           gangwei=employee['岗位'],
                           base=employee['底薪'],
                           transport=employee['交通补助'],
                           food=employee['餐补'],
                           bonus=employee['奖金'],
                           salary=employee['工资总计'],
                           familyname=employee['姓名'][0],
                           company='杭州XX',
                           date='2019年12月')
    print(info)
    print('===============================================================')

运行结果

代码语言:javascript
复制
张三先生(女士),您好!

      这是2019年12月的工资条信息:

         销售底薪¥3000
         交通补助¥1000
         餐补¥1000

      由于您当月出色的表现,
      公司决定奖励你¥10000
      当月工资总计15000

      希望张兄弟(姐妹)继续为了公司加油~


    

                         from 杭州XX公司



。。。。。省略。。。。。

    赵六先生(女士),您好!

      这是2019年12月的工资条信息:

         财务底薪¥5000
         交通补助¥500
         餐补¥500

      由于您当月出色的表现,
      公司决定奖励你¥1000
      当月工资总计7000

      希望赵兄弟(姐妹)继续为了公司加油~


    

                         from 杭州XX公司

    ===============================================================

群发邮件

群发邮件前需要先安装好zmail,学一下zmail使用方法

使用zmail群发邮件

代码语言:javascript
复制
!pip3 install zmail
代码语言:javascript
复制
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Requirement already satisfied: zmail in /usr/local/lib/python3.7/site-packages (0.2.7)
代码语言:javascript
复制
import zmail
import pandas as pd

# 邮件的pop设置后的密码
server =zmail.server('你的qq邮箱','POP设置后的密码')

#计算工资
df = pd.read_excel('工资条.xlsx')
df['工资总计'] = df.eval("底薪+奖金+交通补助+餐补")

#群发邮件
for idx, employee in df.iterrows():
    #工资条内容
    info = template.format(name=employee['姓名'],
                           gangwei=employee['岗位'],
                           base=employee['底薪'],
                           transport=employee['交通补助'],
                           food=employee['餐补'],
                           bonus=employee['奖金'],
                           salary=employee['工资总计'],
                           familyname=employee['姓名'][0],
                           company='杭州XX',
                           date='2019年12月')

    #邮件内容
    mailcontent ={'subject':'{} 工资条到了, 注意查收!'.format(employee['姓名']),
                  'content_text': info,
                  'attachments': 'img/感谢有你.png' }
    server.send_mail(employee['邮箱'], mailcontent)
    print('{} 的工资条发送成功!'.format(employee['姓名']))




print('\n'*5)
print('ヽ( ̄▽ ̄)و全部通知完成,下班,回家,过元旦~')

运行结果

代码语言:javascript
复制
张三 的工资条发送成功!
    李四 的工资条发送成功!
    王五 的工资条发送成功!
    赵六 的工资条发送成功!


    ヽ( ̄▽ ̄)و全部通知完成,下班,回家,过元旦~

运行效果

邮箱POP设置

参考这篇文章 使用zmail群发邮件 设置POP

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-01-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员郭震zhenguo 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 邮箱POP设置
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档