Python郵件傳送

2021-08-28 23:49:33 字數 2541 閱讀 2772

怎麼使用python傳送郵件呢?首先我們要使用到下面的模組

python內建對smtp的支援,可以傳送純文字郵件、html郵件以及帶附件的郵件。

python對smtp支援有smtplib和email兩個模組,email負責構造郵件,smtplib負責傳送郵件。

注意:使用前需要開啟smtp服務

我們這以163郵箱為例

import smtplib                           #傳送郵件模組

from email.mime.text import mimetext #定義郵件內容

from email.header import header #定義郵件標題

#傳送郵箱伺服器

smtpserver='smtp.163.com'

#傳送郵箱使用者名稱密碼

user='***@163.com'

password='…'

#傳送和接收郵箱

sender='***@163.com'

receive='***@126.com'

#傳送郵件主題和內容

subject='web selenium 自動化測試報告'

content='

'#html郵件正文

msg=mimetext(content,'html','utf-8')

msg['subject']=header(subject,'utf-8')

msg['from']='***@163.com'

msg['to'] = '***[email protected]'

#ssl協議埠號要使用465

smtp = smtplib.smtp_ssl(smtpserver, 465)

#helo 向伺服器標識使用者身份

smtp.helo(smtpserver)

#伺服器返回結果確認

smtp.ehlo(smtpserver)

#登入郵箱伺服器使用者名稱和密碼

smtp.login(user,password)

print("開始傳送郵件...")

smtp.sendmail(sender,receive,msg.as_string())

smtp.quit()

print("郵件傳送完成!")

上面只實現了郵件的傳送,那要傳送附件怎麼辦呢?接下來就是傳送帶附件形式的郵箱實現

import smtplib                           #傳送郵件模組

from email.mime.text import mimetext #定義郵件內容

from email.mime.multipart import mimemultipart #用於傳送附件

#傳送郵箱伺服器

smtpserver='smtp.163.com'

#傳送郵箱使用者名稱密碼

user='***@163.com'

password='123456'

#傳送和接收郵箱

sender='***@163.com'

receives=['***[email protected]','***[email protected]']

#傳送郵件主題和內容

subject='web selenium 附件傳送測試'

content='

'send_file=open(r"e:\python_script\logo.png",'rb').read()

att=mimetext(send_file,'base64','utf-8')

att["content-disposition"]='attachment;filename="logo.png"'

#構建傳送與接收資訊

msgroot=mimemultipart()

msgroot.attach(mimetext(content, 'html', 'utf-8'))

msgroot['subject']=subject

msgroot['from']=sender

msgroot['to'] = ','.join(receives)

msgroot.attach(att)

#ssl協議埠號要使用465

smtp = smtplib.smtp_ssl(smtpserver, 465)

#helo 向伺服器標識使用者身份

smtp.helo(smtpserver)

#伺服器返回結果確認

smtp.ehlo(smtpserver)

#登入郵箱伺服器使用者名稱和密碼

smtp.login(user,password)

print("start send email...")

smtp.sendmail(sender,receives,msgroot.as_string())

smtp.quit()

print("send end!")

html傳送郵件 Python傳送郵件(三十)

簡單郵件傳輸協議 smtp 是一種協議,用於在郵件伺服器之間傳送電子郵件和路由電子郵件。python提供smtplib模組,該模組定義了乙個smtp客戶端會話物件,可用於使用smtp或esmtp偵聽器守護程式向任何網際網路機器傳送郵件。這是乙個簡單的語法,用來建立乙個smtp物件,稍後將演示如何用它...

python 傳送郵件

coding utf 8 import smtplib from email.mime.text import mimetext from email.header import header 檔案形式的郵件 def email file mail host smtp.qq.com 郵箱伺服器 ma...

python 傳送郵件

smtp mail transfer protocol 即簡單郵件傳輸協議,它是一組用於由源位址到目的位址傳送郵件的規則,由它來控制信件的中轉方式。python的smtplib提供了一種很方便的途徑傳送電子郵件。它對smtp協議進行了簡單的封裝。直接貼 coding utf 8 import smt...