温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何使用Python邮箱自动群发工资条

发布时间:2021-05-10 17:12:29 来源:亿速云 阅读:215 作者:Leah 栏目:开发技术

这篇文章给大家介绍如何使用Python邮箱自动群发工资条,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

Python主要用来做什么

Python主要应用于:1、Web开发;2、数据科学研究;3、网络爬虫;4、嵌入式应用开发;5、游戏开发;6、桌面应用开发。

一、excel的内容

如何使用Python邮箱自动群发工资条

二、效果

如何使用Python邮箱自动群发工资条

三、需要用的库:

  • openpyxl

  • smptlib

  • email.mime.text

  • email.header

四、实现步骤

4.1 获取excel表的数据

wb = load_workbook('数据表.xlsx') sheet = wb.active for row in sheet:	for cell in row:         print(cell.value)

4.2 编写邮件内容

使用字符串拼接成html

for row in sheet:         tbody = '<tr>'         cnt += 1         if cnt == 1:             for cell in row:                 thead += f'<th>{cell.value}</th>'             thead += '</thead>'         else:             for cell in row:                 tbody += f'<td>{cell.value}</td>'             tbody += '</tr>'         name = row[0].value         mail = row[1].value         #  2.编写邮件内容         content = f'''             <h4>{name},你好</h4>             <p>请查收你在2025年 5月1日 - 5月31 日的工资</p>             <table border='1px solid black'>             {thead}             {tbody}             </table>         '''

4.3 发送邮件

# 发送邮件 class Test:     def ck_log(self):         pass     def send_email(self, econtent, ename, mail):         host = 'smtp.qq.com'         user = '你的邮箱'         password = '你的授权码'         receivers = [mail]         subject = '员工工资表'         msg = MIMEText(econtent, 'html', 'utf-8')         msg['From'] = Header('有限公司')         msg['To'] = Header(ename)         msg['Subject'] = Header(subject, 'utf-8')         try:             obj = smtplib.SMTP_SSL(host, 465)             obj.login(user, password)             obj.sendmail(user, receivers, msg.as_string())             print("邮件发送成功!")         except smtplib.SMTPException as e:             print("Error: 无法发送邮件")             print(e)

五、所有代码

from openpyxl import load_workbook import smtplib from email.mime.text import MIMEText from email.header import Header ''' 1.获取excel表的数据 2.编写邮件内容 3.发送邮件 ''' # 发送邮件 class Test:     def ck_log(self):         pass     def send_email(self, econtent, ename, mail):         host = 'smtp.qq.com'         user = '1479898695@qq.com'         password = 'bijoplffwqqlbaci'         receivers = [mail]         subject = '员工工资表'         msg = MIMEText(econtent, 'html', 'utf-8')         msg['From'] = Header('有限公司')         msg['To'] = Header(ename)         msg['Subject'] = Header(subject, 'utf-8')         try:             obj = smtplib.SMTP_SSL(host, 465)             obj.login(user, password)             obj.sendmail(user, receivers, msg.as_string())             print("邮件发送成功!")         except smtplib.SMTPException as e:             print("Error: 无法发送邮件")             print(e) if __name__ == '__main__':     wb = load_workbook('数据表.xlsx')     o = Test()     cnt = 0     sheet = wb.active     thead = '<thead>'     #  1.获取excel表的数据     for row in sheet:         tbody = '<tr>'         cnt += 1         if cnt == 1:             for cell in row:                 thead += f'<th>{cell.value}</th>'             thead += '</thead>'         else:             for cell in row:                 tbody += f'<td>{cell.value}</td>'             tbody += '</tr>'         name = row[0].value         mail = row[1].value         #  2.编写邮件内容         content = f'''             <h4>{name},你好</h4>             <p>请查收你在2025年 5月1日 - 5月31 日的工资</p>             <table border='1px solid black'>             {thead}             {tbody}             </table>         '''         #  3.发送邮件         if cnt == 3:             print('content:', content)             print(name, mail)             o.send_email(content, name, mail)

关于如何使用Python邮箱自动群发工资条就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI