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

示例功能说明:

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

2.将文件发送老板。

import pandas as pdimport win32com.client as win32import time 
import xlrdimport xlwtimport numpy as npimport osimport codecs, sysimport 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,
'+mail_item.Subject+',敬请查阅.
xxx
tel:5513'
    
    #添加附件    mail_item.Attachments.Add(xlfile)   
    mail_item.Send()if __name__ == '__main__':    print(today)    #拷贝附件到本地    copy_share_file()    #发送邮件
    send_mail()