iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python 使用office365邮箱
  • 434
分享到

Python 使用office365邮箱

邮箱Python 2023-01-31 08:01:56 434人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

最近遇到一个需求,需要使用office365邮箱发送邮件,使用SSL发送会失败,必须使用TLS加密协议才能发送成功。 使用类封装了一下,功能如下:1. 支持附件2. 支持多个发件人3. 执行TLS MailTools.p

最近遇到一个需求,需要使用office365邮箱发送邮件,使用SSL发送会失败,必须使用TLS加密协议才能发送成功。

 

使用类封装了一下,功能如下:

1. 支持附件

2. 支持多个发件人

3. 执行TLS

 

MailTools.py

#!/usr/bin/env python3coding: 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  #发送地址
        self.title = title  # 标题
        self.content = content  # 发送内容
        self.sys_sender = 'xx@office365.com'  # 系统账户
        self.sys_pwd = '123456'  # 系统账户密码

    def send(self,file_list):
        """
        发送邮件
        :param file_list: 附件文件列表
        :return: bool
        """
        try:
            # 创建一个带附件的实例
            msg = MIMEMultipart()
            # 发件人格式
            msg['From'] = formataddr(["", self.sys_sender])
            # 收件人格式
            msg['To'] = formataddr(["", self.sender])
            # 邮件主题
            msg['Subject'] = self.title

            # 邮件正文内容
            msg.attach(MIMEText(self.content, 'plain', 'utf-8'))

            # 多个附件
            for file_name in file_list:
                print("file_name",file_name)
                # 构造附件
                xlsxpart = MIMEApplication(open(file_name, 'rb').read())
                # filename表示邮件中显示的附件名
                xlsxpart.add_header('Content-Disposition','attachment',filename = '%s'%file_name)
                msg.attach(xlsxpart)

            # SMTP服务器
            server = smtplib.SMTP("smtp.office365.com", 587,timeout=10)
            server.ehlo()
            server.starttls()
            # 登录账户
            server.login(self.sys_sender, self.sys_pwd)
            # 发送邮件
            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__':
    # 发送地址
    sender = "12345678@qq.com"
    # 标题
    title = "测试告警"
    # 开始时间
    start_time = time.strftime('%Y-%m-%d %H:%M:%S')
    ip = "xx.xx.xx.xx"
    # 发送内容
    content = "{} ip: {} 掉线".format(start_time,ip)
    # 附件列表
    file_list = []
    ret = SendMail(sender, title, content).send(file_list)
    print(ret,type(ret))

注意:请根据实际情况,修改邮件账号和密码。


--结束END--

本文标题: Python 使用office365邮箱

本文链接: https://www.lsjlt.com/news/193698.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python 使用office365邮箱
    最近遇到一个需求,需要使用office365邮箱发送邮件,使用SSL发送会失败,必须使用TLS加密协议才能发送成功。 使用类封装了一下,功能如下:1. 支持附件2. 支持多个发件人3. 执行TLS MailTools.p...
    99+
    2023-01-31
    邮箱 Python
  • yagmail 邮箱的使用
    文章来源:GITHub:https://github.com/kootenpv/yagmail 安装 pip3 install yagmail pip3 install keyring   简单例子 import yag...
    99+
    2023-01-31
    邮箱 yagmail
  • 使用python怎么扫描web邮箱
    这篇文章给大家介绍使用python怎么扫描web邮箱,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。基本思路我们向工具传入目标站点之后,首先要对输入进行一个基本的检查和分析,因为我们会可能会传入各种样式的地址,比如htt...
    99+
    2023-06-14
  • 利用Python+163邮箱授权码发送邮
    背景 前段时间写了个自动打卡的脚本,但是脚本不够完善,我需要知道,打卡到底成没成功,因此,我想到了用Python执行完代码之后,再执行一段发送邮件的代码。需求开始明确了,就开始分析和写代码实现吧。 分析 SMTP(Simple Mail ...
    99+
    2023-01-30
    邮箱 Python
  • laravel怎么使用163邮箱发送邮件
    这篇文章主要讲解了“laravel怎么使用163邮箱发送邮件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“laravel怎么使用163邮箱发送邮件”吧!一、首先还是现在163注册一个账号并且...
    99+
    2023-07-04
  • python通过163邮箱发送邮件
    from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText import smtplib import sys impor...
    99+
    2023-01-31
    发送邮件 邮箱 python
  • 如何使用Python邮箱自动群发工资条
    这篇文章给大家介绍如何使用Python邮箱自动群发工资条,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究;3、网络爬虫;4、嵌入式应用开发...
    99+
    2023-06-15
  • python小脚本-提取邮箱
            使用python正则表达式,在一堆各种字符中提取是邮箱名的字符串。import refile = open("AT.txt")c=[]for line in file.readlines():    contant = re...
    99+
    2023-01-31
    脚本 邮箱 python
  • 公司员工邮箱怎么使用
    公司员工邮箱怎么使用?在当今数字化时代,电子邮件成为了职场中不可或缺的沟通工具之一。公司员工邮箱的正确使用不仅可以提高工作效率,还能加强内部沟通和组织协作。本文将介绍员工邮箱的使用方法,以便您充分利用邮箱,提高工作效率。 一、配置邮箱 1...
    99+
    2024-01-23
    公司员工邮箱 公司员工邮箱怎么使用 公司邮箱 企业邮箱知识
  • Python3:用QQ邮箱发送邮件
    1.     环境操作系统 Win10 IDE PyCharm Community 2018.1 Python 3.5   2.     设置QQ邮箱    QQ邮箱是SSL认证的邮箱系统,要用QQ邮箱发送邮件,需要开启POP3/ SM...
    99+
    2023-01-31
    发送邮件 邮箱 QQ
  • python实现QQ邮箱群发邮件实例
    目录一,登录邮箱,获取授权码二,替换参数总结一,登录邮箱,获取授权码 二,替换参数 给多人发送邮箱,我只是做了个循环,把每个人得授权码循环输入了。把授权码和邮箱替换成自己得就行,...
    99+
    2024-04-02
  • win10邮箱如何用
    这篇文章主要介绍“win10邮箱如何用”,在日常操作中,相信很多人在win10邮箱如何用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”win10邮箱如何用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!wi...
    99+
    2023-06-30
  • Python实现发送邮件到自己邮箱
    目录1、缘由2、设置SMTP服务器3、使用python发送4、总结5、补充1、缘由 在日常开发中,我们经常需要监控应用程序的状态,及时发现问题并采取措施解决。而通过邮件发送报警信息则...
    99+
    2023-05-14
    Python发送邮件到邮箱 Python发送邮件 Python 邮件 邮箱
  • Win7怎么使用网易邮箱发送密码邮件
    这篇文章给大家介绍Win7怎么使用网易邮箱发送密码邮件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。邮箱里存储着不少机密与隐私,同时,它也是互联网中容易被黑客入侵的一个路径,极易被盗。因此,我们不仅要注意邮箱密码的保护...
    99+
    2023-06-28
  • Python读取邮箱中的邮件,含文本,附
    #-*- encoding: utf-8 -*- import sys import locale import poplib from email import parser import email import string # ...
    99+
    2023-01-31
    文本 邮箱 邮件
  • springboot 使用QQ邮箱发送邮件的操作方法
    目录一、QQ邮箱打开POP3/SMTP服务二、springboot配置一、QQ邮箱打开POP3/SMTP服务 上面的服务开启后,会得到一串授权密码在springboot配置中需...
    99+
    2024-04-02
  • python实现邮箱发送信息
    本文实例为大家分享了python实现邮箱发送信息的具体代码,供大家参考,具体内容如下 一、SSL SSL 是指安全套接字层,简而言之,它是一项标准技术,可确保互联网连接安全,保护两个...
    99+
    2024-04-02
  • 邮箱网站jsp+python源代码
    该源代码适用于以下系列邮箱:[url]http://mail.zj139.com[/url][url]http://mail.e165.com[/url][url]http://mail.sd139.com[/url][url]http:/...
    99+
    2023-01-31
    源代码 邮箱 网站
  • 利用Python+163邮箱授权码发送带
    背景 前段时间写了个自动爬虫的脚本,定时在阿里云服务器上执行,会从某个网站上爬取链接保存到txt文本中,但是脚本不够完善,我需要爬虫完毕之后通过邮件把附件给我发送过来,之前写过一个《利用Python+163邮箱授权码发送邮件》的博客,但是...
    99+
    2023-01-30
    邮箱 Python
  • 怎么用Python自动化管理Exchange邮箱
    本篇内容主要讲解“怎么用Python自动化管理Exchange邮箱”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Python自动化管理Exchange邮箱”吧!Python是一种解释型、交...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作