python實現(xiàn)自動發(fā)送郵件
自動發(fā)送郵件功能是我們經(jīng)常要用到的,比如每天定時統(tǒng)計報表信息,然后自動發(fā)送給運營人員,協(xié)助運營人員進(jìn)行業(yè)務(wù)數(shù)據(jù)分析。本文是用Python寫的一個自動發(fā)送郵件的腳本,調(diào)用函數(shù)時,直接把發(fā)件人郵箱地址、密碼、收件人郵箱地址、郵件標(biāo)題、內(nèi)容等信息傳遞給函數(shù),即可實現(xiàn)自動發(fā)送郵件功能。
腳本代碼如下:
# -*- coding: UTF-8 -*- import sys, os, re, urllib, urlparse import smtplib import traceback from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart def sendmail(subject,msg,toaddrs,fromaddr,smtpaddr,password): ''''' @subject:郵件主題 @msg:郵件內(nèi)容 @toaddrs:收信人的郵箱地址 @fromaddr:發(fā)信人的郵箱地址 @smtpaddr:smtp服務(wù)地址,可以在郵箱看,比如163郵箱為smtp.163.com @password:發(fā)信人的郵箱密碼 ''' mail_msg = MIMEMultipart() if not isinstance(subject,unicode): subject = unicode(subject, 'utf-8') mail_msg['Subject'] = subject mail_msg['From'] =fromaddr mail_msg['To'] = ','.join(toaddrs) mail_msg.attach(MIMEText(msg, 'html', 'utf-8')) try: s = smtplib.SMTP() s.connect(smtpaddr) #連接smtp服務(wù)器 s.login(fromaddr,password) #登錄郵箱 s.sendmail(fromaddr, toaddrs, mail_msg.as_string()) #發(fā)送郵件 s.quit() except Exception,e: print "Error: unable to send email" print traceback.format_exc() if __name__ == '__main__': fromaddr = "xxxxxxxx@163.com" smtpaddr = "smtp.163.com" toaddrs = ["xxxxxxxx@qq.com","xxxxxxxxx@163.com"] subject = "測試郵件" password = "xxxxxxxx" msg = "測試一下" sendmail(subject,msg,toaddrs,fromaddr,smtpaddr,password)
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
解決python執(zhí)行較大excel文件openpyxl慢問題
這篇文章主要介紹了解決python執(zhí)行較大excel文件openpyxl慢問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05python開發(fā)之IDEL(Python GUI)的使用方法圖文詳解
這篇文章主要介紹了python開發(fā)之IDEL(Python GUI)的使用方法,結(jié)合圖文形式較為詳細(xì)的分析總結(jié)了Python GUI的具體使用方法,需要的朋友可以參考下2015-11-11Pytest初學(xué)者快速上手高效Python測試指南
這篇文章主要為大家介紹了Pytest初學(xué)者快速上手的高效Python測試指南,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01