亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python發送Email方法實例

系統 1684 0

本文以實例形式展示了Python發送Email功能的實現方法,有不錯的實用價值的技巧,且功能較為完善。具體實現方法如下:

主要功能代碼如下:

            
#/usr/bin/env python
# -*- encoding=utf-8 -*-

import base64
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText

class CCSendMail:
  def __init__(self,host="your.mailhost.com",username='fromuser@xxx.com',password='passwd'):
    self.__smtp=smtplib.SMTP(host)
    self.__subject=None
    self.__content=None
    self.__from=None
    self.__to=[]
    self.__style='html'
    self.__charset='gb2312'
    self.username = username
    self.password = password
    self.fromAlias='fromuser' #發件人別名
    self.from2=''
    
  def close(self):
    try:
      self.__smtp.quit()
    except Exception ,e:
      pass  
  def setFromAlias(self,alias):
    self.fromAlias=alias
  def setStyle(self,style):
    self.__style = style
  def setFrom2(self,from2):
    self.from2=from2
    
  def setSubject(self,subject):
    self.__subject=subject
    
  def setContent(self,content):
    self.__content=content
    
  def setFrom(self,address):
    self.__from=address
    
  def addTo(self,address):
    self.__to.append(address)
    
  def setCharset(self,charset):
    self.__charset=charset
    
  def send(self):
    try:
      self.__smtp.set_debuglevel(1)
      
      #login if necessary
      if self.username and self.password:
        self.__smtp.login(self.username,self.password)
        
      msgRoot = MIMEMultipart('related')
      msgRoot['Subject'] = self.__subject
      aliasB6=base64.encodestring(self.fromAlias.encode(self.__charset))
      if len(self.from2)==0:
        msgRoot['From'] = "=?%s?B?%s?=%s"%(self.__charset,aliasB6.strip(),self.__from)
      else:
        msgRoot['From'] = "%s"%(self.from2)
      msgRoot['To'] = ";".join(self.__to)
      
      msgAlternative = MIMEMultipart('alternative')
      msgRoot.attach(msgAlternative)
      
      msgText = MIMEText(self.__content, self.__style,self.__charset)
      msgAlternative.attach(msgText)

      self.__smtp.sendmail(self.__from,self.__to,msgRoot.as_string())
      return True
    except Exception,e:
      print "Error ",e
      return False
    
  def clearRecipient(self):
    self.__to = []
  
  #給單個人發送郵件
  def sendHtml(self,address,title,content):
    self.setStyle('html')
    self.setFrom("<%s>"%self.username)
    if not isinstance(content,str):
      content = content.encode('gb18030')
    self.addTo(address)
    self.setSubject(title)
    self.setContent(content)
    ret = self.send()
    self.close()
    return ret
  
  #群發郵件
  def sendMoreHtml(self,addressList,title,content):
    self.setStyle('html')
    self.setFrom("<%s>"%self.username)
    if not isinstance(content,str):
      content = content.encode('gb18030')
    for address in addressList:
      self.addTo(address)
    self.setSubject(title)
    self.setContent(content)
    ret = self.send()
    self.close()
    return ret

#測試
def main():
  send=CCSendMail()
  send.sendHtml('touser@xxx.com',u'郵件標題',u'郵件內容')
  #send.sendMoreHtml([touser1@xx.com,touser2@xx.com],u'郵件標題',u'郵件內容')
 
if __name__=='__main__':
  main()


          

希望本文所述實例對大家的Python程序設計有一定的幫助。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久资源365 | 最近中文字幕在线 | 中文 | 99精品免费观看 | 2级毛片 | 亚洲欧美一区二区三区 | 久久国产乱子伦精品免费强 | 日本a毛片在线播放 | 国产乱码在线精品可播放 | 奇米线在人线免费视频 | 久久 精品 一区二区 | 国产综合欧美日韩视频一区 | 最新国产中文字幕 | 四虎最新永久在线精品免费 | 请看一下欧美一级毛片 | 日韩欧美色视频在线观看 | 久久久久综合国产 | 亚洲国产欧美久久香综合 | 亚洲欧美精品网站在线观看 | 亚洲欧美日韩精品 | 爱爱免费视屏 | 久久99久久成人免费播放 | 欧美成人在线观看 | 色婷婷色| 99久久精品免费视频 | 老王午夜69精品影院 | 狠狠一区 | 在线免费午夜视频 | 香蕉久久ac一区二区三区 | 日韩一中文字幕 | 欧美日本一本线在线观看 | 欧美特级爽毛片 | 亚洲一二区 | 国产乱码精品一区二区三上 | 免费看曰批女人爽的视频网址 | 伊人色综合久久 | 亚洲国产精品久久卡一 | 久久久久久99精品 | 在线看片日韩 | 精品久久亚洲一级α | 97久久国产一区二区三区四区 | 快播第四色 |