自動(dòng)發(fā)送郵件
我們把報(bào)表做出來(lái)以后一般都是需要發(fā)給別人查看,對(duì)于一些每天需要發(fā)的報(bào)表或者是需要一次發(fā)送多份的報(bào)表,這個(gè)時(shí)候可以考慮借助Python來(lái)自動(dòng)發(fā)送郵件。
天津市瑞通預(yù)應(yīng)力鋼絞線有限公司 使用郵箱的一步一般我們?cè)谑褂肣Q郵箱、163郵箱、126郵箱等這些比較常用的郵箱時(shí),只需要輸入賬號(hào)和密碼就可以。但是在使用手機(jī)端的企業(yè)郵箱的時(shí)候,一般都需要配置一下,常規(guī)的配置界面如下所示:
就是除了在輸入賬號(hào)密碼以外,還需要輸入一個(gè)服務(wù)器鏈接地址,這個(gè)地址每個(gè)公司都會(huì)不太一樣。
一份郵件的組成下圖是outlook中發(fā)送一份郵件的界面,主要包含發(fā)件人、收件人、抄送人、主題、正文、附件這幾部分。這也是一般郵件比較通用的組成部分。
如何發(fā)送郵件
在發(fā)送郵件之前先需要與服務(wù)器進(jìn)行連接,在Python中主要利用smtplib模塊來(lái)建立服務(wù)器連接接、服務(wù)器斷開的工作。
不同郵箱的服務(wù)器鏈接地址不一樣,大根據(jù)自己使用的郵箱設(shè)置相應(yīng)的服務(wù)器鏈接。下表為常見郵箱對(duì)應(yīng)的服務(wù)器鏈接:
郵箱 服務(wù)器地址 新浪郵箱 smtp.sina.com 搜狐郵箱 smtp.sohu.com 126郵箱 smtp.126.com 139郵箱 smtp.139.com 163網(wǎng)易郵箱 smtp.163.com在與163郵箱服務(wù)器進(jìn)行連接之前,需要先登陸自己的163郵箱進(jìn)行授權(quán)設(shè)置,授權(quán)碼設(shè)置如下:
點(diǎn)擊設(shè)置中的POP3/SMTP/IMAP,勾選SMTP服務(wù),根據(jù)提是進(jìn)行授權(quán)碼設(shè)置,設(shè)置授權(quán)成功后,在Python中利用授權(quán)碼進(jìn)行登陸,而不是你本來(lái)的郵箱密碼,如果使用本來(lái)的郵箱密碼登陸,預(yù)應(yīng)力鋼絞線會(huì)報(bào)錯(cuò)。
連接設(shè)置好以后就可以使用賬戶密碼進(jìn)行登錄了,登錄成功以后就可以對(duì)郵件內(nèi)容進(jìn)行編輯,編輯完成以后就可以點(diǎn)擊發(fā)送了,發(fā)送完成后斷開服務(wù)器鏈接。
如下展示了發(fā)送一份郵件的簡(jiǎn)短流程代碼:
正式發(fā)送一份郵件如下以163郵箱為例,展示了發(fā)送一份郵件完整的Python代碼:
后的結(jié)果如下圖:
關(guān)于自動(dòng)發(fā)送郵件還有一些進(jìn)階的內(nèi)容,比如定時(shí)發(fā)送,正文顯示html內(nèi)容等,大有興趣的可以自行上網(wǎng)搜索學(xué)習(xí)。
批量發(fā)送郵件如果是需要同時(shí)發(fā)送多份郵件,可以把收件人整理成一個(gè)表格進(jìn)行循環(huán)遍歷,挨個(gè)進(jìn)行發(fā)送。
比如我們現(xiàn)在需要給銷售部門好幾百銷售人員分別發(fā)送本月各自的銷售任務(wù),在發(fā)送郵件的時(shí)候主題需要命名成xxx任務(wù)明細(xì),在正文中的稱呼也需要改成對(duì)應(yīng)的收件人,附件中需要添加各自的任務(wù)明細(xì)表,而且需要抄送給各自的直屬上。
根據(jù)上述的需要,我們整理了如下收件人信息相關(guān)的表格df:
姓名 收件人 抄送人 張俊紅1 zhangjunhong11@163.com zhangjunhong@163.com 張俊紅2 zhangjunhong22@163.com zhangjunhong@163.com只需要寫一個(gè)for循環(huán)去遍歷這個(gè)df表格中的信息,然后就可以分別發(fā)送出去,具體實(shí)現(xiàn)代碼如下:
通過(guò)運(yùn)行上面的代碼,就可以達(dá)到一次給表格df中的所有人發(fā)送郵件的需求。
以上就是 Python如何實(shí)現(xiàn)自動(dòng)發(fā)送郵件的詳細(xì)內(nèi)容常州預(yù)應(yīng)力鋼絞線價(jià)格,更多關(guān)于 Python發(fā)送郵件的資料請(qǐng)關(guān)注腳本之其它相關(guān)文章!