首页 > 编程语言 >python 调用 outlook(全网功能最全)

python 调用 outlook(全网功能最全)

时间:2024-06-09 19:00:06浏览次数:28  
标签:__ outlook python 最全 list None receiver mail

Outlook

文章目录


一、调用 win32com 操作 outlook 发送邮件

需要为你的电脑安装 outlook
代码如下:

from win32com.client import Dispatch # 导入包

class outlook():
    '''重写outlook邮件功能'''
    def __init__(self):
        self.outlook = Dispatch('outlook.application')
    def __str__(self):
        pass
    def send_email(self, to_receiver_list, cc_receiver_list=None, title=None, text=None, html_text=None,
                   file_list=None, importance=None, png_list=None):
        '''
        发送邮件
        '''
        mail = self.outlook.CreateItem(0)
        if isinstance(to_receiver_list, list): # 发送邮箱
            mail.To = ';'.join(to_receiver_list)
        else:
            mail.To = to_receiver_list

        mail.Subject = title # 标题
        
        '''正文二选一,如果有图片选择html_text'''
        if text != None: # 正文
            mail.Body = text
        if html_text != None: # 支持html格式正文
            mail.HTMLBody = html_text

        if cc_receiver_list != None: # 抄送邮箱
            if isinstance(cc_receiver_list, list):
                mail.Cc = ';'.join(cc_receiver_list)
            else:
                mail.Cc = cc_receiver_list

        if file_list != None: # 邮件附件
            if isinstance(file_list, list):
                for path in file_list:
                    mail.Attachments.Add(path)
            else:
                mail.Attachments.Add(file_list)

        if importance != None:  # 2 1 0 邮件重要性
            mail.Importance = importance

        if png_list != None: # html正文添加图片
            if isinstance(png_list, list):
                i = 1
                for path in png_list:
                    attachment = mail.Attachments.Add(path)
                    attachment.PropertyAccessor.SetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001E",
                                                            "image{}".format(i))
                    i += 1
            else:
                attachment = mail.Attachments.Add(png_list)
                attachment.PropertyAccessor.SetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001E",
                                                        "image{}".format(1))

        mail.Send()


if __name__ == '__main__':
   Outlook = outlook()
    Outlook.send_email(to_receiver_list=['[email protected]'], title='测试标题', html_text='测试正文', importance = 1)

总结

win32com:https://learn.microsoft.com/zh-cn/windows/win32/LearnWin32/com-coding-practices

标签:__,outlook,python,最全,list,None,receiver,mail
From: https://blog.csdn.net/SzyPy/article/details/139530296

相关文章

  • VSCode 1.90版本 升级需谨慎~(Python)
        由于再次出现justMyCode的问题,请使用Python的小伙伴要谨慎将VisualStudioCode升级到1.90版本(两天前官方刚发布的) 若已经升级到1.90的小伙伴,可以从这里下载1.89版本进行“补救“:    1.89.1版本下载链接: https://code.visualstudio.com/updates/v1_89    ......
  • python-数据分析-Pandas-1、Series对象
    Pandas是WesMcKinney在2008年开发的一个强大的分析结构化数据的工具集。Pandas以NumPy为基础(实现数据存储和运算)提供了专门用于数据分析的类型、方法和函数,对数据分析和数据挖掘提供了很好的支持;同时pandas还可以跟数据可视化工具matplotlib很好的整合在一起,非常轻松......
  • python的优势有哪些?
    python的优点很多,下面简单地列举一些:简单Python的语法非常优雅,甚至没有像其他语言的大括号,分号等特殊符号,代表了一种极简主义的设计思想。阅读Python程序像是在读英语。易学Python入手非常快,学习曲线非常低,可以直接通过命令行交互环境来学习Python编程。免费/开源P......
  • 运筹学练习Python精解——图与网络
    练习1北京(Pe)、东京(T)、纽约(N)、墨西哥(M)、伦敦(L)、巴黎(Pa)各城市之间的航线距离如下表所示。从北京(Pe)乘飞机到东京(T)、纽约(N)、墨西哥城(M)、伦敦(L)、巴黎(Pa)五城市做旅游,每城市恰去一次再返回北京,应如何安排旅游线,使旅程最短?LMNPaPeTL056352151......
  • 通过 Python 进行 ArcGIS 环境设置
    在ArcGIS中,环境设置可用于确保在控制环境下执行地理处理,您可以在控制环境中决定将处理限制到特定地理区域的处理范围、所有输出地理数据集的坐标系或输出栅格数据集的像元大小等。本文将以核密度分析为例,介绍通过Python进行ArcGISPro环境设置的方法。1导入相关模块impor......
  • 一个python 程序执行顺序
    1.Python程序执行顺序在Python中,程序的执行顺序通常遵循几个基本原则:(1)从上到下:Python代码通常从上到下顺序执行。(2)代码块:由缩进(如空格或制表符)定义的代码块(如函数定义、类定义、循环体、条件语句体等)内的代码会按照特定的逻辑顺序执行。(3)控制流语句:如if、for、while等控制流......
  • 一篇文章让你让你对python函数的掌握由基础到高级
    python中函数由低级到高级一函数基础1.1函数简介functioninputprint内置函数——》可以直接使用可复用性非常差函数就是存代码的总结函数的优点:1.遇到重复功能的时候,直接调用即可,减少代码量2.提升代码的结构性,分工明确,提高代码的可读性3.遇到扩展功能的时候,修......
  • 《Python程序设计(第二版)》第五章冷门点
    python小白考前复习集合关系运算去掉列表中重复元素,按原列表顺序输出无重复元素的列表集合的存储原理元素必须可哈希查找速度特别快字典函数存储原理字典可以作为if多路分支的替代写法计数作用多项式相加嵌套结构集合一般什么时候用集合呢?就是想要维护一大堆不重......
  • 一个python 程序执行顺序
    1.Python程序执行顺序在Python中,程序的执行顺序通常遵循几个基本原则:(1)从上到下:Python代码通常从上到下顺序执行。(2)代码块:由缩进(如空格或制表符)定义的代码块(如函数定义、类定义、循环体、条件语句体等)内的代码会按照特定的逻辑顺序执行。(3)控制流语句:如if、for、while等控制......
  • python-数据分析-Numpy-3、数组的运算
    数组的运算使用NumPy最为方便的是当需要对数组元素进行运算时,不用编写循环代码遍历每个元素,所有的运算都会自动的矢量化。简单的说就是,NumPy中的数学运算和数学函数会自动作用于数组中的每个成员。#-*-coding:utf-8-*-#数组的运算#使用NumPy最为方便的是当需要对数组......