最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python使用電子郵件模塊smtplib的方法

 更新時(shí)間:2016年08月28日 12:39:25   投稿:mdxy-dxy  
這篇文章主要介紹了python使用電子郵件模塊smtplib的方法,需要的朋友可以參考下

Smptp類(lèi)定義:smtplib.SMTP(host[,port[,local_hostname[,,timeout]]]),作為SMTP的構(gòu)造函數(shù),功能是與smtp服務(wù)器建立連接,在連接成功后,就可以向服務(wù)器發(fā)送相關(guān)請(qǐng)求,比如登陸,校驗(yàn),發(fā)送,退出等。host參數(shù)為遠(yuǎn)程smtp主機(jī)地址,比如stmp.163.com;port為連接端口,默認(rèn)為25;local_hostname的作用是在本地的FQDN(完整的域名)發(fā)送HELO/EHLO指令,timeout為連接或嘗試在多數(shù)秒超時(shí),SMTP類(lèi)具有如下方法:
SMTP.connect([host[,port]])方法,連接遠(yuǎn)程smtp主機(jī)方法,host為遠(yuǎn)程主機(jī)地址,port為遠(yuǎn)程主機(jī)smtp端口,默認(rèn)25,也可以直接使用host:port形式表示,例如:SMTP.connect("smtp.163.com","25').
SMTP.login(user,password)方法,遠(yuǎn)程smtp主機(jī)的校驗(yàn)方法,參數(shù)為用戶(hù)名與密碼,如SMTP.login("18801457794@139.com",'123456').
SMTP.sendmail(from_addr,to_addrs,msg[,mail_options,rcpt_options])方法,實(shí)現(xiàn)郵件的發(fā)送功能,參數(shù)依次為發(fā)件人,收件人,郵件內(nèi)容,例如:SMTP.sendmail("python@163.com",'404408853@qq.com',body),其中body內(nèi)容定義如下:
"""From:python@163.com
To:404408853@qq.com
Subject:test mail
test mail body"""
SMTP.starttls([keyfile[,certfile]])方法,啟用TLS(安全傳輸)模式,所有SMTP指令都講加密傳輸,例如使用gmail的stmp服務(wù)器時(shí)需要啟動(dòng)此項(xiàng)才能正常發(fā)送郵件
SMTP.quit()方法,端口smtp服務(wù)器的連接

下面通過(guò)實(shí)例列子來(lái)了解python是怎么發(fā)送郵件

[root@localhost smtplib]# cat simple1.py 
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import smtplib
import string
HOST = "smtp.139.com" #定義smtp主機(jī)
SUBJECT = "test" #定義郵件主題
TO = "404408853@qq.com" #定義郵件收件人
FROM = "18801457794@139.com" #定義郵件發(fā)件人
text = "python test mail" #郵件的內(nèi)容
BODY=string.join(( #組裝sendmail方法的郵件主體內(nèi)容,各段以"\r\n"進(jìn)行分隔
  "From:%s" %FROM,
  "To:%s" %TO,
  "Subject:%s"%SUBJECT,
  "",
  text
),"\r\n")
   
server = smtplib.SMTP() #創(chuàng)建一個(gè)SMTP對(duì)象
server.connect(HOST,"25") #通過(guò)connect方法連接smtp主機(jī)
server.starttls() #啟動(dòng)安全傳輸模式
server.login("18801457794@139.com","123456") #郵件賬戶(hù)登錄校驗(yàn)
server.sendmail(FROM,TO,BODY) #郵件發(fā)送
server.quit() #斷開(kāi)smtp連接

執(zhí)行這段代碼,我們將受到一封郵件

實(shí)現(xiàn)HTML格式的數(shù)據(jù)報(bào)表郵件
純文本的郵件內(nèi)容已經(jīng)不能滿(mǎn)足我們多樣化的需求,本示例通過(guò)引入email.mime的MIMETex類(lèi)來(lái)實(shí)現(xiàn)支持HTML格式的郵件,支持所有HTML元素,包含表格,圖片,動(dòng)畫(huà),CSS樣式,表單等。本示例使用HTML的表格定制完美的業(yè)務(wù)流量報(bào)表,實(shí)現(xiàn)代碼如下:

#!/usr/bin/env python
#coding:utf-8
import smtplib
from email.mime.text import MIMEText #導(dǎo)入MIMEText類(lèi)
HOST = "smtp.139.com"
SUBJECT = u"官網(wǎng)流量數(shù)據(jù)報(bào)表"
TO = "404408853@qq.com"
FROM = "18801457794@139.com"
msg = MIMEText("""
  <table width="800" border="0" cellspacing="0" cellpadding="4">
    <tr>
      <td bgcolor="#CECFAD" height="20" style="font-size:14px">*官網(wǎng)數(shù)據(jù)<a href="monitor.domain.com">更多</a></td>
    </tr>
    <td bgcolor="#EFEBDE" height="100" style="font-size:13px">
    1)日訪問(wèn)量:<font color=read>152433</font>訪問(wèn)次數(shù):23651 頁(yè)面瀏覽量:45123 點(diǎn)擊數(shù):545122 數(shù)據(jù)流量:504Mb<br>
    2)狀態(tài)碼消息<br>
    &nbsp;&nbsp;500:105 404;3264 503;214<br>
    3)訪客瀏覽器信息<br>
    &nbsp;&nbsp;IE:50% firefox:10% chrome:30% other:10%<br>
    4)頁(yè)面信息<br>
    &nbsp;&nbsp;/index.php 42153<br>
    &nbsp;&nbsp;/view.php 21451<br>
    </td>
    </tr>
  </table>""","html","utf-8")
msg['Subject'] = SUBJECT
msg['FROM'] = FROM
msg['To'] = TO
try:
  server = smtplib.SMTP()
  server.connect(HOST,'25')
  server.starttls()
  server.login('18801457794@139.com','123456')
  server.sendmail(FROM,TO,msg.as_string())
  server.quit()
  print "郵件發(fā)送成功"
except Exception,e:
  print "失敗:" + str(e)

運(yùn)行代碼結(jié)果如圖,

示例2:實(shí)現(xiàn)圖文格式的服務(wù)器性能報(bào)表郵件
當(dāng)要求包含圖片數(shù)據(jù)的郵件內(nèi)容時(shí),需要引用MIMEImage類(lèi),若郵件主體由多個(gè)MIME對(duì)象組成,則同時(shí)需要引用MIMEMultipart類(lèi)來(lái)進(jìn)行封裝。本示例通過(guò)MIMEText與MIMEImage類(lèi)的組合來(lái)實(shí)現(xiàn)圖文格式的服務(wù)器性能報(bào)表郵件的定制,實(shí)現(xiàn)代碼如下

#!/usr/bin/env python
#coding: utf-8
import smtplib,string
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
HOST ="smtp.139.com" #定義smtp主機(jī)
SUBJECT = "金美美平臺(tái)系統(tǒng)狀態(tài)報(bào)表" #定義郵件主題
TO = "404408853@qq.com,302803690@qq.com" #定義郵件收件人
FROM = "18801457794@139.com" #定義郵件發(fā)件人
TO_list = TO.split(TO)
def addimg(src,imgid): #添加圖片函數(shù),參數(shù)1:圖片路徑,參數(shù)2:圖片ID
  fp = open(src,'rb') #打開(kāi)文件
  msgImage = MIMEImage(fp.read()) #創(chuàng)建MIMEImage對(duì)象,讀取圖片內(nèi)容并作為參數(shù)
  fp.close() #關(guān)閉文件
  msgImage.add_header('Content-ID',imgid) #指定圖片文件的Content-ID,<img>標(biāo)簽src用到
  return msgImage #返回msgImage對(duì)象
 
msg = MIMEMultipart('related') #創(chuàng)建MIMEMultipart對(duì)象,采用related定義內(nèi)嵌資源的郵件體
msgtext = MIMEText("""
<table width="600" border="0" cellspacing="0" cellspacing="4">
  <tr bgcolor="#CECFAD" height="20" style="font-size:14px">
  <td colspan=2>以下是211.157.111.41系統(tǒng)狀態(tài)圖</td>
  </tr>
  <tr bgcolor="#EFEBDE" height="100" style="font-size:13px">
  <td>
  <img src="cid:io"></td><td>
  <img src="cid:load"></td>
  </tr>
  <tr bgcolor="#EFEBDE" height="100" style="font-size:13px">
  <td>
  <img src="cid:mem"></td><td>
  <img src="cid:disk"></td>
  </tr>
  </table>""","html","utf-8") #<img>標(biāo)簽的src屬性是通過(guò)Content-ID來(lái)引用的
 
msg.attach(msgtext) #MIMEMultipart對(duì)象附加MIMEText的內(nèi)容
msg.attach(addimg("img/bytes_io.png","io")) #使用MIMEMultipart對(duì)象附加MIMEImage的內(nèi)容
msg.attach(addimg("img/os_load.png","load"))
msg.attach(addimg("img/os_mem.png","mem"))
msg.attach(addimg("img/os_disk.png","disk"))
 
msg['Subject'] = SUBJECT
msg['FROM']=FROM
msg['To'] = TO
try:
  server = smtplib.SMTP()
  server.connect(HOST,"25")
  server.starttls()
  server.login('18801457794@139.com','123456')
  server.sendmail(FROM,TO_list,msg.as_string())
  server.quit()
  print "郵件發(fā)送成功!"
except Exception,e:
  print "失敗:"+ str(e)

代碼運(yùn)行效果如圖

相關(guān)文章

  • 使用Python實(shí)現(xiàn)分組數(shù)據(jù)并保存到單獨(dú)的文件中

    使用Python實(shí)現(xiàn)分組數(shù)據(jù)并保存到單獨(dú)的文件中

    當(dāng)處理大型數(shù)據(jù)集時(shí),通常需要將數(shù)據(jù)分組,并將每個(gè)分組的數(shù)據(jù)保存到單獨(dú)的文件中,本文將使用 Python 中的 pandas 庫(kù)來(lái)實(shí)現(xiàn)這一目標(biāo),需要的可以參考下
    2024-04-04
  • python實(shí)現(xiàn)小球彈跳效果

    python實(shí)現(xiàn)小球彈跳效果

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)小球彈跳效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • Python實(shí)現(xiàn)單鏈表中元素的反轉(zhuǎn)

    Python實(shí)現(xiàn)單鏈表中元素的反轉(zhuǎn)

    這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)單鏈表中元素的反轉(zhuǎn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • python 密碼學(xué)示例——理解哈希(Hash)算法

    python 密碼學(xué)示例——理解哈希(Hash)算法

    這篇文章主要介紹了哈希(Hash)算法的相關(guān)資料,幫助大家更好的利用python處理密碼,感興趣的朋友可以了解下
    2020-09-09
  • 使用PyTorch實(shí)現(xiàn)手寫(xiě)數(shù)字識(shí)別功能

    使用PyTorch實(shí)現(xiàn)手寫(xiě)數(shù)字識(shí)別功能

    在人工智能的世界里,計(jì)算機(jī)視覺(jué)是最具魅力的領(lǐng)域之一,通過(guò)PyTorch這一強(qiáng)大的深度學(xué)習(xí)框架,我們將在經(jīng)典的MNIST數(shù)據(jù)集上,見(jiàn)證一個(gè)神經(jīng)網(wǎng)絡(luò)從零開(kāi)始學(xué)會(huì)識(shí)別數(shù)字的全過(guò)程,本文給大家介紹了如何使用PyTorch實(shí)現(xiàn)手寫(xiě)數(shù)字識(shí)別,需要的朋友可以參考下
    2025-03-03
  • 在Python中執(zhí)行異常處理的基本步驟

    在Python中執(zhí)行異常處理的基本步驟

    異常處理是編寫(xiě)健壯、可靠和易于調(diào)試的Python代碼中不可或缺的一部分,下面這篇文章主要給大家介紹了關(guān)于在Python中執(zhí)行異常處理的基本步驟,需要的朋友可以參考下
    2024-08-08
  • Python最長(zhǎng)回文子串問(wèn)題

    Python最長(zhǎng)回文子串問(wèn)題

    這篇文章主要介紹了Python最長(zhǎng)回文子串問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • 收集的幾個(gè)Python小技巧分享

    收集的幾個(gè)Python小技巧分享

    這篇文章主要介紹了收集的幾個(gè)Python小技巧分享,如獲得當(dāng)前機(jī)器的名字、獲取當(dāng)前工作路徑、獲取系統(tǒng)的臨時(shí)目錄等,需要的朋友可以參考下
    2014-11-11
  • Python實(shí)現(xiàn)圖片背景移除工具

    Python實(shí)現(xiàn)圖片背景移除工具

    這篇文章主要為大家詳細(xì)介紹了如何通過(guò)Python語(yǔ)言實(shí)現(xiàn)一個(gè)簡(jiǎn)單的圖片背景移除工具,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-02-02
  • python可視化實(shí)現(xiàn)代碼

    python可視化實(shí)現(xiàn)代碼

    今天小編就為大家分享一篇關(guān)于python可視化實(shí)現(xiàn)代碼,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01

最新評(píng)論

白玉县| 武隆县| 林芝县| 江华| 苏州市| 砚山县| 固镇县| 沂源县| 蓬安县| 游戏| 洛川县| 广汉市| 大渡口区| 大渡口区| 山西省| 嫩江县| 射洪县| 唐海县| 通州区| 聊城市| 札达县| 泰安市| 大厂| 含山县| 海兴县| 莎车县| 柳河县| 新乐市| 周至县| 资源县| 桃源县| 凤山县| 凤阳县| 浮梁县| 乐安县| 崇仁县| 康乐县| 泽普县| 麟游县| 镇赉县| 大渡口区|