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

Python 使用office365郵箱的示例

 更新時(shí)間:2020年10月29日 16:01:34   作者:py3study  
這篇文章主要介紹了Python 使用office365郵箱的示例,幫助大家利用python進(jìn)行高效辦公,感興趣的朋友可以了解下

一、概述

最近遇到一個(gè)需求,需要使用office365郵箱發(fā)送郵件,使用SSL發(fā)送會失敗,必須使用TLS加密協(xié)議才能發(fā)送成功。

二、完整代碼

使用類封裝了一下,功能如下:

1. 支持附件

2. 支持多個(gè)發(fā)件人

3. 執(zhí)行TLS

MailTools.py

#!/usr/bin/env python3
# coding: utf-8


import smtplib # 加載smtplib模塊
from email.mime.text import MIMEText
from email.utils import formataddr
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication
import time

class SendMail(object):
  def __init__(self,sender,title,content):
    self.sender = sender #發(fā)送地址
    self.title = title # 標(biāo)題
    self.content = content # 發(fā)送內(nèi)容
    self.sys_sender = 'xx@office365.com' # 系統(tǒng)賬戶
    self.sys_pwd = '123456' # 系統(tǒng)賬戶密碼

  def send(self,file_list):
    """
    發(fā)送郵件
    :param file_list: 附件文件列表
    :return: bool
    """
    try:
      # 創(chuàng)建一個(gè)帶附件的實(shí)例
      msg = MIMEMultipart()
      # 發(fā)件人格式
      msg['From'] = formataddr(["", self.sys_sender])
      # 收件人格式
      msg['To'] = formataddr(["", self.sender])
      # 郵件主題
      msg['Subject'] = self.title

      # 郵件正文內(nèi)容
      msg.attach(MIMEText(self.content, 'plain', 'utf-8'))

      # 多個(gè)附件
      for file_name in file_list:
        print("file_name",file_name)
        # 構(gòu)造附件
        xlsxpart = MIMEApplication(open(file_name, 'rb').read())
        # filename表示郵件中顯示的附件名
        xlsxpart.add_header('Content-Disposition','attachment',filename = '%s'%file_name)
        msg.attach(xlsxpart)

      # SMTP服務(wù)器
      server = smtplib.SMTP("smtp.office365.com", 587,timeout=10)
      server.ehlo()
      server.starttls()
      # 登錄賬戶
      server.login(self.sys_sender, self.sys_pwd)
      # 發(fā)送郵件
      server.sendmail(self.sys_sender, [self.sender, ], msg.as_string())
      # 退出賬戶
      server.quit()
      return True
    except Exception as e:
      print(e)
      return False

if __name__ == '__main__':
  # 發(fā)送地址
  sender = "12345678@qq.com"
  # 標(biāo)題
  title = "測試告警"
  # 開始時(shí)間
  start_time = time.strftime('%Y-%m-%d %H:%M:%S')
  ip = "xx.xx.xx.xx"
  # 發(fā)送內(nèi)容
  content = "{} ip: {} 掉線".format(start_time,ip)
  # 附件列表
  file_list = []
  ret = SendMail(sender, title, content).send(file_list)
  print(ret,type(ret))

注意:請根據(jù)實(shí)際情況,修改郵件賬號和密碼。

以上就是Python 使用office365郵箱的示例的詳細(xì)內(nèi)容,更多關(guān)于python 使用office郵箱的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論

许昌县| 万年县| 库车县| 监利县| 怀化市| 剑河县| 昌都县| 尤溪县| 棋牌| 涿鹿县| 子长县| 呼和浩特市| 高雄市| 南昌县| 永顺县| 大庆市| 布拖县| 清远市| 象州县| 渑池县| 竹北市| 淄博市| 陈巴尔虎旗| 新疆| 佛山市| 高密市| 长汀县| 方山县| 阿坝县| 广昌县| 铅山县| 庐江县| 罗甸县| 枣阳市| 得荣县| 芜湖市| 普陀区| 林甸县| 股票| 汤原县| 南城县|