Python Outlook发送邮件

Posted bellin124

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python Outlook发送邮件相关的知识,希望对你有一定的参考价值。

outlook发送是Python直接调用win32方式,调用程序outlook直接发送邮件

示例功能说明:

1.从远程服务器下载Excel文件作为邮件附件。

2.将文件发送老板。

import pandas as pd
import win32com.client as win32
import time 
import xlrd
import xlwt
import numpy as np
import os
import codecs, sys
import matplotlib.pyplot as plt


 # 获取今天(现在时间)
today = time.strftime(\'%Y-%m-%d\',time.localtime(time.time()))
year_month = time.strftime(\'%Y-%m\',time.localtime(time.time()))
 
 # 文件目录
share_file_host=\'\\\\\\\\10.4.50.16\\\\fab2文件库\'
share_file_path=\'\\\\\\\\10.4.50.16\\\\fab2文件库\\\\Department\\\\daily_report\\\\{}\\\\{}.xlsx\'.format(year_month,today) 
target_file_path=\'e:\\\\\'
xlfile= \'e:\\\\\'+\'{}.xlsx\'.format(today)

#cope 文件
def copy_share_file():
    
    copy_cmd=\'xcopy /y {} {}\'.format(share_file_path,target_file_path)
    print(copy_cmd)
    copy_result=os.popen(copy_cmd)
    print(copy_result.read())

#发送邮件
def send_mail():
    #调用Outlook application
    outlook = win32.Dispatch(\'Outlook.Application\')
    send_account = \'xxx@csmc.crmicro.com\'
    address_1 = \'aaa@csmc.crmicro.com\' 
    address_2 = \'bbb@csmc.crmicro.com\'+\';\'+\'ccc@csmc.crmicro.com\'
    
    mail_item = outlook.CreateItem(0) # 0: olMailItem
    
    mail_item.To = address_1#收件人
    mail_item.CC = address_2#抄送人
    mail_item.Subject = today+\' CIM小组工作总结\' #主题
    mail_item.BodyFormat = 2          # 2: html format
    #邮件body
    mail_item.HTMLBody  = \'Dear Sir,<br>\'+mail_item.Subject+\',敬请查阅.<br>xxx<br>tel:5513\'
    
    #添加附件
    mail_item.Attachments.Add(xlfile)   
    mail_item.Send()

if __name__ == \'__main__\':
    print(today)
    #拷贝附件到本地
    copy_share_file()
    #发送邮件
    send_mail()

 

以上是关于Python Outlook发送邮件的主要内容,如果未能解决你的问题,请参考以下文章

Python Outlook发送邮件

通过 Python 发送 Outlook 电子邮件?

用python调用outlook发邮件的问题

Python 调用outlook发送邮件(转 )

使用 Python 发送 Outlook 电子邮件的方法的差异

python 操作excel格式化及outlook正文,发送邮件