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

时间:2022-06-25 08:32:04

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
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发送邮件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
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)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:http://blog.csdn.net/qq_26925867/article/details/72843389