成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

利用Python實現郵件發送

開發 后端
郵件的規則,由它來控制信件的中轉?方式。python的smtplib提供了了?一種很?方便便的途徑發送電?子郵件。它對smtp協議進?行行了了簡單的封裝。

SMTP(Simple Mail Transfer Protocol)即簡單郵件傳輸協議,它是?一組?用于由源地址到?目的地址傳送

郵件的規則,由它來控制信件的中轉?方式。python的smtplib提供了了?一種很?方便便的途徑發送電?子郵件。它對smtp協議進?行行了了簡單的封裝。

一. 準備用來發送郵件的郵箱賬號

準備好郵箱賬號和郵箱登錄授權碼。不同類型郵箱獲取授權碼的方式大同小異,這兒以QQ郵箱為例演示獲取授權碼步驟:

第一步:用網頁登錄QQ郵箱,找到幫助中心

第二步:在幫助中心中選擇"客戶端設置"中的第2個問題:

然后按照對應的要求操作,得到授權碼并且保存。

二. 發送郵件的基本步驟

代碼發送郵件的步驟,和人工發送郵件步驟基本一致:登錄郵箱  -> 準備郵件內容   ->  發送郵件。

2.1 登錄郵箱

import smtplib
1. 連接郵箱服務器
連接對象 = smtplib.SMTP_SSL(服務器地址, 郵箱服務端口)
- 服務器地址:smtp.163.com(163郵箱)、smtp.qq.com(qq郵箱) - 郵箱服務端口:465或者25
2. 登錄郵箱 連接對象.login(郵箱賬號, 授權碼)

2.2 準備數據

數據指的需要發送的內容。郵件內容的構建需要涉及到另外一個庫email,它可以?來構建郵件主題以及各種形式的郵件內容(包括文字內容、圖片內容、html內容、附件)等,這?先簡單說一下郵件主題和?本內容,其他形式的內容在后?面郵件內容部分詳細講解。

from email.mime.multipart import MIMEMultipart  
from email.mime.text import MIMEText
from email.header import Header
1. 創建郵件對象
郵件對象 = MIMEMultipart()
2. 設置郵件主題
主題對象 = Header(郵件標題, 編碼方式).encode()
郵件對象['Subject'] = 主題對象
3.設置郵件發送者
郵件對象['From'] = '用戶名 <用戶名>'
4.設置郵件接受者
郵件對象['To'] = '收件?1;收件?2;收件人3...'
5. 添加文字內容
文字內容對象 = MIMEText(內容, 類型, 編碼方式)
- 內容:就是文字字符串
- 類型:plain(簡單的?字內容)、html(超文本) 郵件對象.attach(文字對象)

2.3 發送郵件

三.各種類型郵件發送實例

連接對象.sendmail(發件?, 收件人, 郵件對象.as_string())  
連接對象.quit()

3.1普通文字內容郵件

這類郵件的郵件正文只有普通文字信息,沒有超文本也沒有圖片,并且沒有附件:

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.header import Header
# 1. 連接郵箱服務器
con = smtplib.SMTP_SSL('smtp.163.com', 465)
# 2. 登錄郵箱
con.login('XXXX@163.com', 'XXXXX')
# 2. 準備數據
# 創建郵件對象
msg = MIMEMultipart()
# 設置郵件主題
subject = Header('找回密碼', 'utf-8').encode() msg['Subject'] = subject
# 設置郵件發送者
msg['From'] = 'XXXX@163.com <XXXX@163.com>'
# 設置郵件接受者
msg['To'] = '726550822@qq.com'
# 添加?文字內容
text = MIMEText('忘記密碼需要找回密碼', 'plain', 'utf-8')
msg.attach(text)
# 3.發送郵件
con.sendmail('xxxx@163.com', '726550822@qq.com', msg.as_string())
con.quit()

3.2 超文本文件內容

正文更加豐富和有趣的一種郵件,生活中我們接收到的來自各大平臺發送的郵件都是這類郵件,核心代碼格式如下:

from email.mime.text import MIMEText
html?本對象 = MIMEText(html內容字符串, 'html', 編碼方式) 郵件對象.attach(html?本對象)

具體代碼:

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.header import Header
con = smtplib.SMTP_SSL('smtp.163.com', 465)
con.login('xxxx@163.com', 'xxxxxx')
msg = MIMEMultipart()
subject = Header('找回密碼', 'utf-8').encode()
msg['Subject'] = subject
msg['From'] = 'xxxx@163.com <xxxx@163.com>'
msg['To'] = '726550822@qq.com'
# 添加html內容
content = """
<h2>我是正?中的標題</h2>
<p>郵件正文描述性文字1</p>
<p>郵件正?描述性文字2</p>
<img src='https://www.baidu.com/img/bd_logo1.png'> <center>百度圖片</center>
<a >百度?下</a>
"""
html = MIMEText(content, 'html', 'utf-8')
msg.attach(html)
# 發送郵件
con.sendmail('xxxx@163.com', '726550822@qq.com', msg.as_string())
con.quit()

3.3 發送附件

郵件內容除了正文內容,有的時候還需要將各種文件以附件的形式單獨發送,發送附件的核心代碼如下:

from email.mime.text import MIMEText
?文件對象 = MIMEText(?件二進制數據, 'base64', 編碼?式)
文件對象["Content-Disposition"] = 'attachment; filename="?件名"'
郵件對象.attach(?件對象)

具體代碼:

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.header import Header
from email.mime.message import MIMEMessage from copy import deepcopy
con = smtplib.SMTP_SSL('smtp.163.com', 465)
con.login('xxxx@163.com', 'xxxxxx')
msg = MIMEMultipart()
subject = Header('?文件附件發送', 'utf-8').encode() msg['Subject'] = subject
msg['From'] = 'xxxx@163.com <xxxx@163.com>'
msg['To'] = '726550822@qq.com'
# 添加?文件附件
file1 = MIMEText(open('files/test.txt', 'rb').read(), 'base64', 'utf-8')
file1["Content-Disposition"] = 'attachment; filename="test.txt"'
msg.attach(file1)
file2 = MIMEText(open('files/pyecharts的使?用.pdf', 'rb').read(), 'base64', 'utf-8')
file2["Content-Disposition"] = 'attachment; filename="test.pdf"'
msg.attach(file2)
# 發送郵件
con.sendmail('xxxx@163.com', '726550822@qq.com', msg.as_string())
con.quit()

責任編輯:龐桂玉 來源: Python專欄
相關推薦

2011-10-31 09:35:50

2017-04-26 09:00:23

Python發送郵件腳本

2022-01-28 15:04:57

Python日志郵件

2011-01-19 13:54:13

Thunderbird模板

2024-09-05 08:58:37

2025-04-11 08:25:36

2023-12-06 11:10:08

2009-12-09 15:23:36

PHP mail()函

2009-12-02 16:31:54

PHP發送郵件

2020-07-14 09:58:01

Python開發工具

2009-09-03 17:23:45

C#發送郵件

2012-02-16 11:04:32

2013-05-27 13:37:42

Android開發移動開發屏幕截圖

2020-07-27 16:52:59

Mailmerge定制郵件系統應用

2021-11-09 09:01:36

Python網絡爬蟲Python基礎

2010-03-03 10:18:17

Python發送郵件

2024-11-15 07:00:00

Python發送郵件

2020-09-23 06:00:04

ShellLinux郵件監控

2024-03-25 08:45:18

郵件發送Spring應用程序

2009-09-03 17:31:34

C#發送郵件
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕第一页在线 | 午夜免费观看网站 | 亚洲精品粉嫩美女一区 | 欧美精品一区二区三区蜜臀 | 天天艹日日干 | 天天干天天草 | 亚洲国产成人精 | 国产福利91精品 | 超碰最新在线 | www.狠狠干 | 亚洲第一av | 最新中文字幕在线 | 久久久久久国产精品 | 日本天天操 | 全免费a级毛片免费看视频免 | 91欧美 | 久久精品国产免费 | 高清欧美性猛交 | 久久av资源网| 欧美亚洲一区二区三区 | 日韩精品一区二区三区中文在线 | 91精品国产乱码久久久久久久久 | 久草a√ | 欧美一区2区三区4区公司二百 | 国产精品99视频 | 国产精品视频免费观看 | 亚洲国产二区 | 蜜桃传媒一区二区 | 欧美日韩在线观看一区 | 九九九久久国产免费 | 日韩在线一区视频 | 亚洲欧美国产精品久久 | 久久久综合久久 | 亚洲视频一区在线观看 | 亚洲第一色av | 国产亚洲一区在线 | 日日摸夜夜添夜夜添精品视频 | 久久美女视频 | 欧美精品一区二区在线观看 | 99国产欧美| 国产视频黄色 |