from openpyxl import load_workbook, Workbook
import smtplib
# 邮件正文
from email.mime.text import MIMEText
# 邮件头
from email.header import Header
# 加载工资表excel
wb = load_workbook(r'C:\Users\ht\Desktop\python自动发工资条.xlsx', data_only=True)
sheet = wb.active
# 登录邮箱
smtp_login = smtplib.SMTP_SSL('smtp.qq.com', 465)
smtp_login.login('发件箱', '密码')
# 循环excel
count = 0
table_col_html = '<thead>'
for i in sheet.iter_rows(min_row=1):
count += 1
if count == 1:
for col in i:
table_col_html += f'<th>{col.value}</th>'
table_col_html += '</thead>'
continue
else:
row_text = '<tr>'
for cell in i:
if cell.value is None:
row_text += f'<th>无</th>'
else:
row_text += f'<td>{cell.value}</td>'
row_text += '</tr>'
staff_name = i[1].value
staff_email = i[0].value
print(staff_email, staff_name)
smtp_html = f'''
<h5>{staff_name},你好:</h5>
<p>请查收工资条</p>
<table border = '1px solid black'>
{table_col_html}
{row_text}
</table>
'''
msg = MIMEText(smtp_html, 'html', 'utf-8')
msg['From'] = Header('大白胖子科技有限公司人事部', 'utf-8')
msg['To'] = Header('大白胖子员工', 'utf-8')
msg['Subject'] = Header('工资条', 'utf-8')
# 发邮件
smtp_login.sendmail('发件箱', [staff_email], msg.as_string())
自动发工资条
最新推荐文章于 2022-07-23 14:02:59 发布