溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么用python批量發(fā)送工資條郵件

發(fā)布時(shí)間:2022-01-27 11:25:15 來(lái)源:億速云 閱讀:219 作者:kk 欄目:開(kāi)發(fā)技術(shù)

今天給大家介紹一下怎么用python批量發(fā)送工資條郵件。文章的內(nèi)容小編覺(jué)得不錯(cuò),現(xiàn)在給大家分享一下,覺(jué)得有需要的朋友可以了解一下,希望對(duì)大家有所幫助,下面跟著小編的思路一起來(lái)閱讀吧。

工資excel表格格式如下所示:

怎么用python批量發(fā)送工資條郵件

使用python批量給每位員工發(fā)送工資條信息,格式如下:

怎么用python批量發(fā)送工資條郵件

思路:

首先是加載excel,獲取當(dāng)前sheet表格

salay = load_workbook('大唐建設(shè)集團(tuán)-2022年5月工資.xlsx', data_only=True)
ws = salay.active

登錄所使用的發(fā)件郵箱服務(wù)器

# 登錄郵箱服務(wù)器
smtp_obj = smtplib.SMTP_SSL('smtp.qq.com', 465)
# smtp_obj.set_debuglevel(1)
smtp_obj.login('vision.wangpc@foxmail.com', "tsjodbaab") # 騰訊郵箱,客戶端登錄使用授權(quán)碼

這里有坑:郵箱登錄的的賬戶密碼有的郵箱是密碼,有的是使用授權(quán)碼,騰訊qq郵箱就是使用授權(quán)碼

使用新浪郵箱時(shí)候,登錄不上服務(wù)器,原因未知!

遍歷sheet表,獲取表頭信息。

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

讀取excel第一行,構(gòu)造表頭,第一行只讀取一次,所以加了一個(gè)計(jì)數(shù)變量.count

table_header是構(gòu)造工資條表頭信息的html文本

讀取每一行數(shù)據(jù),獲取員工姓名、郵箱以及工資條信息,構(gòu)造郵件正文的完整內(nèi)容!

else:
    msg_context_data = '<tr>'
    for cell in row:  # 一次讀取員工工資條
        msg_context_data += f'''<td>{cell.value}</td>'''
        msg_context_data += '</tr>'
        mail = row[1].value
        name = row[2].value
        msg_context = f'''
                 <h4>{name},你好:</h4>
                 <p>請(qǐng)查收你2022-05月的工資條</p>
                 <table border="1px"> 
                    {table_header} 
                    {msg_context_data} 
                </table>                       
              '''

msg_context_data是工資條信息那一行html格式的文本數(shù)據(jù)

每讀取一行數(shù)據(jù),發(fā)送一封郵件

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()) # 沒(méi)讀取一行信息發(fā)送一封郵件

Python主要用來(lái)做什么

Python主要應(yīng)用于:1、Web開(kāi)發(fā);2、數(shù)據(jù)科學(xué)研究;3、網(wǎng)絡(luò)爬蟲(chóng);4、嵌入式應(yīng)用開(kāi)發(fā);5、游戲開(kāi)發(fā);6、桌面應(yīng)用開(kāi)發(fā)。

以上就是怎么用python批量發(fā)送工資條郵件的全部?jī)?nèi)容了,更多與怎么用python批量發(fā)送工資條郵件相關(guān)的內(nèi)容可以搜索億速云之前的文章或者瀏覽下面的文章進(jìn)行學(xué)習(xí)哈!相信小編會(huì)給大家增添更多知識(shí),希望大家能夠支持一下億速云!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI