python使用两种发邮件的方式smtp和outlook示例

yipeiwu_com5年前Python基础

smtp是直接调用163邮箱的smtp服务器,需要在163邮箱中设置一下。outlook发送就是Python直接调用win32方式。调用程序outlook直接发送邮件。

import win32com.client as win32 
import xlrd 
outlook = win32.Dispatch('outlook.application') 
mail = outlook.CreateItem(0) 
receivers = ['Yutao.A.Wang@alcatel-sbell.com.cn'] 
mail.To = receivers[0] 
mail.Subject ='test1' 
workbook = xlrd.open_workbook('E:\\kpi excel\\00_summary.xls') 
mySheet = workbook.sheet_by_index(0) 
 
nrows = mySheet.nrows 
content = [] 
for i in range(nrows): 
 ss = mySheet.row_values(i) 
 content.append(ss) 
 print(content) 
 Truecontent =str(content) 
 
mail.Body = Truecontent 
mail.Attachments.Add('E:\\kpi excel\\00_summary.xls') 
mail.Send() 

smtp发送邮件

import smtplib 
from email.mime.text import MIMEText 
mail_host = 'smtp.163.com' 
mail_user = '18298268658' 
mail_pass = 'cat123' 
sender = '18298268658@163.com' 
receivers = ['619538553@qq.com'] 
 
message = MIMEText('content','plain','utf-8') 
message['Subject'] = 'title' 
message['From'] = sender 
message['To'] = receivers[0] 
 
try: 
 smtpObj = smtplib.SMTP() 
 smtpObj.connect(mail_host,25) 
 smtpObj.login(mail_user,mail_pass) 
 smtpObj.sendmail( 
  sender,receivers,message.as_string()) 
 smtpObj.quit() 
 print('success') 
except smtplib.SMTPException as e: 
 print('error',e) 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

对Python中实现两个数的值交换的集中方法详解

如下所示: #定义两个数并赋值 x = 1 y = 2 #第1种方式:引入第三方变量 z = 0 z = x x = y y = z #第2种:不引入第三方变量 x = x+y...

理解Python垃圾回收机制

一.垃圾回收机制 Python中的垃圾回收是以引用计数为主,分代收集为辅。引用计数的缺陷是循环引用的问题。 在Python中,如果一个对象的引用数为0,Python虚拟机就会回收这个对象...

python创建列表和向列表添加元素的实现方法

今天的学习内容是python中的列表的相关内容。 一.创建列表 1.创建一个普通列表 >>> tabulation1 = ['大圣','天蓬','卷帘'] >...

Python的Django框架中模板碎片缓存简介

你同样可以使用cache标签来缓存模板片段。 在模板的顶端附近加入{% load cache %}以通知模板存取缓存标签。 模板标签{% cache %}在给定的时间内缓存了块的内容。...

pandas中的DataFrame按指定顺序输出所有列的方法

问题: 输出新建的DataFrame对象时,DataFrame中各列的显示顺序和DataFrame定义中的顺序不一致。 例如: import pandas as pd grades...