python批量发送工资条邮件

  1. 工资excel表格格式如下所示:

  2. 使用python批量给每位员工发送工资条信息,格式如下:

  3. 思路:

    • 首先是加载excel,获取当前sheet表格

      salay = load_workbook('大唐建设集团-2022年5月工资.xlsx', data_only=True)
      ws = salay.active
      
    • 登录所使用的发件邮箱服务器

      # 登录邮箱服务器
      smtp_obj = smtplib.SMTP_SSL('smtp.qq.com', 465)
      # smtp_obj.set_debuglevel(1)
      smtp_obj.login('vision.wangpc@foxmail.com', "tsjodbaab") # 腾讯邮箱,客户端登录使用授权码
      

      这里有坑:邮箱登录的的账户密码有的邮箱是密码,有的是使用授权码,腾讯qq邮箱就是使用授权码

      使用新浪邮箱时候,登录不上服务器,原因未知!

    • 遍历sheet表,获取表头信息。

      count = 0
      for row in ws:count += 1if count == 1:  # 表头信息读取一次即可table_header = '<thead>'for cell in row:table_header += f'''<th  >{cell.value}</th>'''table_header += '</thead>'
      

      读取excel第一行,构造表头,第一行只读取一次,所以加了一个计数变量.count

      table_header是构造工资条表头信息的html文本

    • 读取每一行数据,获取员工姓名、邮箱以及工资条信息,构造邮件正文的完整内容!

      else:msg_context_data = '<tr>'for cell in row:  # 一次读取员工工资条msg_context_data += f'''<td>{cell.value}</td>'''msg_context_data += '</tr>'mail = row[1].valuename = row[2].valuemsg_context = f'''<h3>{name},你好:</h3><p>请查收你2022-05月的工资条</p><table border="1px"> {table_header} {msg_context_data} </table>                       '''
      

      msg_context_data是工资条信息那一行html格式的文本数据

    • 每读取一行数据,发送一封邮件

      msg = MIMEText(msg_context, 'html', 'GBK')
      msg['from'] = Header('xx人力资源部', 'GBK')
      msg['To'] = Header('name', 'GBK')
      msg['Subject'] = Header('2022.5月工资条', 'GBK')smtp_obj.sendmail('vision.wangpc@foxmail.com', mail, msg.as_string()) # 没读取一行信息发送一封邮件
      
  4. 总结反思:

    这个小程序就是复习实践python发邮件以及简单的excel的处理,python的用处还是很大,也很贴近实际生活,有待多多发觉!

更多学习交流,欢迎访问个人主页我的研学之路

python批量发送工资条邮件相关推荐

  1. Python批量发送QQ邮件

    哇奥,fantastic baby-今天 老Amy 开始薅头发~还有啥宝贝没给大家亮出来- 就开始看到繁忙的 hr ,我设身处地的想,如果行政部门需要批量的给不同人员发送不同信息的邮件~是怎么来做的呢 ...

  2. 企业员工生日批量发送祝福邮件的方式

    这里写自定义目录标题 如何才能批量自动发送祝福邮件 outlook+vba+excel(流行) 如何才能批量自动发送祝福邮件 这个功能网上一般都是outlook+vba和excel表格的方式,创建自动 ...

  3. Python批量生成垃圾邮件内容

    问题背景:这个文章的代码是为下一篇关于贝叶斯分类的文章做准备的,用来生成一些模拟的垃圾邮件.一般而言,垃圾邮件都是带有特定目的的,所以邮件中必然会包含一些特定的词,例如发票.请加微信或者其他词语.也可 ...

  4. 给财务小姐姐写了个Python批量发工资邮件!抱得美人归?

    项目说明 每家公司每个月都要向员工发送一次工资邮件.通常的做法是,财务主管提供一个工资Excel表,其中每一行对应一个员工的工资,让财务美眉们为每个员工编写一封通知邮件,单独发送给对应的员工.如果公司 ...

  5. python批量发送多人带附件邮件

    近几天在问答区遇到这么一个问题,感觉还挺有意思. 楼主由于公司权限管控没办法调用outlook Smtp协议,想要使用 win32com 模块进行发送多封邮件的操作,联系人等储存在 excel 中. ...

  6. 使用Python程序批量发送QQ邮件

    项目文件下载 获取授权码:https://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256 项 ...

  7. python爬取天气预报并发送短信_Python3爬虫教程之利用Python实现发送天气预报邮件...

    前言 此次的目标是爬取指定城市的天气预报信息,然后再用Python发送邮件到指定的邮箱. 下面话不多说了,来一起看看详细的实现过程吧 一.爬取天气预报 1.首先是爬取天气预报的信息,用的网站是中国天气 ...

  8. 使用python+selenium发送QQ邮件

    参考 :    初识selenium-发送QQ邮件  链接------>https://blog.csdn.net/qiye005/article/details/80259607 前言: 为实 ...

  9. python实现天气预报_【Python3爬虫】用Python实现发送天气预报邮件

    此次的目标是爬取指定城市的天气预报信息,然后再用Python发送邮件到指定的邮箱. 一.爬取天气预报 1.首先是爬取天气预报的信息,用的网站是中国天气网,网址是http://www.weather.c ...

最新文章

  1. 刻意练习:LeetCode实战 -- Task09. 环形链表
  2. Vivado中Debug的用法总结
  3. Leetcode - 169. Majority Element (多数投票问题)
  4. IP地址与无符号整数值相互转换
  5. java自定义栈类代码,异常堆栈和自定义类
  6. ★LeetCode(429)——N叉树的层序遍历(JavaScript)
  7. python计算题_Python练习题
  8. 谷歌地图网页版_如何在网站嵌入谷歌地图
  9. Python自动生成新闻报告
  10. Win10便签删除了怎么恢复?便签删除了的恢复方法
  11. Excel数据分列大法总结
  12. 对象数据如何转化成数组
  13. java 使用adobe fms流媒体
  14. CSS3之多列布局columns学习
  15. 请求头(request headers)和响应头(response headers)解析
  16. Eclipse Che安装入门和使用(一)
  17. Java代码如何在虚拟机中运行?
  18. 什么是SOA,谈谈你的SOA的理解
  19. 联想win10 开启 intel vt-x
  20. MATLAB R2020a导出低版本的simulink模型

热门文章

  1. 八月五日个人训练记录
  2. (附源码)电影选座订票app 毕业设计 011439
  3. ORB+GMS、FREAK+GMS、BRISK+GMS、AKAZE+GMS特征点结合使用方法
  4. GSAP动画库入门基础示例:心爱的小摩托
  5. mysql中更改数据库名字_【实操篇】_MySQL如何更改数据库名字?
  6. 【值得收藏】一份非常完整的Mysql规范
  7. Muse UI — 基于 Vue2.0 的 Material Design UI 库
  8. 微服务架构——马丁弗勒
  9. STP 问题处理方法
  10. 近千只股票跌停 沪指暴跌281点创历史之最