精品久久久久久久久久久院品网_男女男精品视频_日韩**一区毛片_在线免费不卡电影_亚洲少妇屁股交4_久久国内精品视频_日韩一区二区三免费高清_亚洲成人手机在线_91看片淫黄大片一级在线观看_中文字幕亚洲在_日本一区二区在线不卡_欧美酷刑日本凌虐凌虐_理论电影国产精品_国产精品视频yy9299一区_99久久精品免费观看_国产精品久久三

您現在所在的位置:首頁 >學習資源 > Python全棧+人工智能入門教材 > Python基礎入門教程31.1:企業級開發進階 發送電子郵件

Python基礎入門教程31.1:企業級開發進階 發送電子郵件

來源:奇酷教育 發表于:

從古代的八百里加急,到現在的電子郵件,郵件的發展見證了上下五千年的發展史,這些當然是廢話,只是要說說郵件的重要性。可常規的通信手段

從古代的八百里加急,到現在的電子郵件,郵件的發展見證了上下五千年的發展史,這些當然是廢話,只是要說說郵件的重要性。

可常規的通信手段相比,尤其是在現在,電話、QQ、微信等等各種社交軟件的興起,比傳統的郵件和現在的電子郵件都快捷了很多;那為什么電子郵件還是顯得那么重要呢~

電子郵件,目前來說在不同的行業中還是占據著非常重要的辦公需求的地位的,常規情況下公司的任務分配、溝通、協作等等都是通過電子郵件進行處理的;同時,電子郵件本身的功能【郵件發送、群發、抄送、附件】讓它更加社和較為正式的辦公場合和日常較大數據的溝通;所以電子郵件的操作在各種編程語言中都有涉及和擴展;也是我們必須掌握的技能之一

本節內容

電子郵件的傳輸過程【本文講解】
發送郵件【本文講解】
接收郵件【下一節講解】

1. 電子郵件的傳輸過程

我們回顧一下傳統的郵件的發送過程(說白了就是寫信),寫信的過程如下圖所示:


郵件投遞過程


寫好信件 -> 投遞到郵筒 -> 郵局攬收所有的郵件 -> XX地區郵局 -> 傳送到XX地區郵局 -> 投遞 -> 個人郵筒 -> 看到信件

電子郵件的傳輸過程和傳統的模式有點類似,也是我們自己有寫郵件的電子郵件軟件,寫好的郵件點擊發送,發送到郵件服務器,某郵件服務器將郵件通過網絡傳送到另一個郵件服務器,郵件服務器將郵件投遞到目標用戶的投遞服務區,目標用戶從投遞服務區收取郵件。

電子郵件發送流程及術語解釋
郵件發送處理過程:用戶A發送郵件給用戶B/C/D


用戶郵件發送處理過程

術語解釋:

MUA:Mail User Agent,郵件用戶代理,我們可以簡單的理解成我們使用的發送郵件的軟件,如Foxmail、outlook、gmail等等,這樣的軟件可以編輯郵件,發送/收取郵件

MTA:Mail Transfer Agent,郵件傳輸代理,我們通常情況下,注冊的郵箱都是屬于某一個運營商的,如xx@qq.com這是騰訊的郵箱、xx@163.com這是網易的郵箱等等,通常運營商會有自己的服務器專門用于郵件的網絡傳輸的,這里的MTA指代的就是運營商服務器

MDA:Mail Delivery Agent,郵件投遞代理,我們發送的郵件,會默認保存在目標服務器中的投遞服務區,需要目標用戶從投遞服務區中提取郵件(收取郵件)。

完成流程如下
郵件 -> MUA -> MTA -> ... n個MTA -> MDA <- MUA <- 郵件

那我們程序中,如果要實現發送郵件和接收郵件的功能,就需要自己開發程序完成從MUA-> MTA發送的過程來完成發郵件的功能;同樣需要完成從MUA->MDA收取郵件的過程完成收郵件的功能

2. SMTP發送郵件

smtp是發送郵件的一種常見的協議,python已經內置了smtp協議的支持,可以發送常規的郵件內容(文本、附件、網頁等)

2.1. 模塊簡介

在郵件發送模塊中,主要使用如下兩個模塊進行處理

  • email模塊:用于構建電子郵件對象的服務模塊
  • smtplib模塊:用于電子郵件發送的服務模塊

接下來,我們先了解一個簡單的郵件發送程序

import email,smtplib
from email.mime.text import MIMEText
# 發送郵件服務器
smtp_server = "smtp.qq.com"
# 郵箱賬號+密碼
email_user = "xxxxxxxxx@qq.com"
email_pass = "qq用戶請填寫授權碼"

# 發件人收件人信息
sender = email_user
receiver = "xxxxxx@xxxx.com"

# 發送的消息設置,plain表示文本,utf-8表示數據編碼格式
msg = MIMEText("這是一份自動發送的測試郵件", "plain", "utf-8")

# 連接郵件服務器,用戶登錄, 發送郵件
server = smtplib.SMTP_SSL(smtp_server, 465)
server.set_debuglevel(1)
server.login(email_user, email_pass)
server.sendmail(sender, receiver, msg.as_string())
server.quit();
print("郵件發送結束")

上述代碼是通過qq郵箱發送郵件的案例
使用QQ郵箱發送郵件時需要注意,如果正常情況下,需要開啟smtp等服務,然后使用正確的登錄賬號和登錄密碼,如果一旦設置了QQ安全中心之類的,就需要通過設置授權碼進行登錄

打開網頁版QQ郵箱,進入[設置]選項->進入[賬戶]選項,操作如下內容:


QQ郵箱發送郵件設置注意事項


設置完上述內容之后,運行程序,我們在目標郵箱中就收到了對應的郵件


接受到的郵件內容

2.2. 發送完整郵件

上面的郵件我們已經看出來了,在收件箱中看到的郵件,只是包含了發件人郵箱和郵件的文本內容;郵件的標題、發件人名稱、收件人名稱、郵件的格式等等都沒有進行處理。
在python的email模塊中,可以通過設置Subject設置郵箱標題,設置From設置發件人信息,設置To設置收件人信息

通常情況下,我們會將標題中的中文,使用email.header模塊中的Header()方法進行編碼以保證數據傳輸的正確性;
在常規郵箱處理過程中,收件人和發件人這兩個信息的展示格式是類似于姓名 這樣的格式,這種格式在python中通過email.utils模塊中的parseaddr()方法和formataddr()方法進行處理的

# 導入需要的模塊
import email, smtplib
from email.mime.text import MIMEText
from email.header import Header
from email.utils import parseaddr, formataddr

# 定義連接郵箱服務器的信息
smtp_server = "smtp.qq.com"
smtp_user = "xxxxxxxx@qq.com"
smtp_pass = "qq用戶如果設置了安全策略的話這里要寫授權碼"

# 設置發件人、收件人
sender = smtp_user
receiver = "xxxxxx@xxxx.com"

# 定義用于編碼發件人和收件人格式的方法
def _format_addr(user):
    name, addr = parseaddr(user)
    return formataddr((Header(name, "utf-8").encode(), addr))

# 開始發送郵件
# 連接服務器
server = smtplib.SMTP_SSL(smtp_server, 465)
# 登錄服務器
server.login(smtp_user, smtp_pass)
# 設置內容,標題,發件人,收件人
msg = MIMEText("這是一個自動發送的郵件", "plain", "utf-8")
msg["subject"] = Header("來自大牧莫邪的問候")
msg["from"] = _format_addr("大牧莫邪 <%s>" % sender)
msg["to"] = _format_addr("牟文斌 <%s>" % receiver)
# 發送郵件
server.sendmail(sender, receiver, msg.as_string())
print("郵件發送成功")

可以看到,上面的代碼中,我們對標題進行了編碼設置,對發件人和收件人的格式進行了處理;[注意:現在的郵箱服務器,某些情況下不通過Header編碼也可以正常識別中文,但是我們還是在代碼中進行規范,防止出現中文亂碼的BUG]
正確接收郵件:


正確接收到包含標題、發件人、收件人等信息的郵件

2.3. 發送HTML格式的文件

在上面的內容中,我們已經看到了,發送郵件的內容,是通過MIMEText()函數進行規范的,如果設置了plain選項表示發送文本郵件,如果我們設置html就是發送的HTML格式的郵件,HTML標簽需要被解析出來,請上干貨:

import email, smtplib
from email.mime.text import MIMEText
from email.header import Header
from email.utils import parseaddr, formataddr

# 定義連接郵箱服務器的信息
smtp_server = "smtp.qq.com"
smtp_user = "1007821300@qq.com"
smtp_pass = "kyecgawxkkupbegh"

# 設置發件人、收件人
sender = smtp_user
receiver = "muwenbin@qikux.com"


# 設置對發件人、收件人格式化處理的方法
def _format_addr(user):
    name, addr = parseaddr(user)
    return formataddr((Header(name, "utf-8").encode(), addr))


# 設置連接郵箱服務器
server = smtplib.SMTP_SSL(smtp_server)
# 登錄賬號
server.login(smtp_user, smtp_pass)
# 設置郵箱標題、發件人、收件人、內容信息
msg = MIMEText("

Hello 你好

這是一封自動發送的測試郵件", "html", "utf-8") msg["subject"] = Header("來自大牧莫邪的問候") msg["from"] = _format_addr("大牧莫邪 <%s>" % sender) msg["to"] = _format_addr("木木 <%s>" % receiver) # 發送郵件 server.sendmail(sender, receiver, msg.as_string()) print("郵件發送完成")

郵件發送完成,收件箱中查看郵件


發送HTML格式的郵件

這里有人可能會有問題,誰TM沒事干,寫一個郵件寫那么多的HTML標簽進去呀,它瘋了啊!

這里需要給大家普及一個前端的知識點,我們通常在網頁中輸入內容時,會添加富文本編輯器,如百度的UEditor,富文本編輯器中會帶各種各樣的格式,這些格式底層其實就是HTML標簽,我們將用戶在富文本編輯器中寫的內容進行發送的時候,發送的就是HTML格式的文本數據


百度富文本框在線演示地址http://ueditor.baidu.com/website/onlinedemo.html

2.4. 郵件中添加附件

上面介紹了常規的郵件發送的處理手段,這里我們接著介紹一種非常常用的郵件內容的處理方式:添加附件

添加了附件的郵件,我們就需要對郵件進行拆分和組合的處理了。說簡單一點就是將郵件內容和附件分別用對象表示,然后將不同的對象組合在一起作為一個完整的郵件即可


郵件內容部分和附件都是獨立的,組合成完整的郵件

在python中,用MIMEText()服務類表示普通的郵件內容,用MIMEBase()服務類來表示我們的附件對象,然后將郵件內容和附件包裝在MIMEMultipart()中形成一個完整的郵件進行發送

廢話少說,上干貨

# 導入需要的模塊
import email, smtplib
from email                  import encoders
from email.utils            import parseaddr, formataddr
from email.header           import Header
from email.mime.base        import MIMEBase
from email.mime.text        import MIMEText
from email.mime.multipart   import MIMEMultipart


# 定義連接郵箱服務器的信息
smtp_server = "smtp.qq.com"
smtp_user = "xxxxxxxxx@qq.com"
smtp_pass = "qq用戶如果設置了安全驗證,這里請填寫您的授權碼"

# 設置發件人、收件人
sender = smtp_user
receiver = "xxxxxx@xxxx.com"


# 設置收件人,發件人格式的方法
def _format_addr(user):
    name, addr = parseaddr(user)
    return formataddr((Header(name, "utf-8").encode(), addr))


# 連接服務器
server = smtplib.SMTP_SSL(smtp_server)
# 登錄服務器
server.login(smtp_user, smtp_pass)

# 設置郵件內容[可以包裝郵件內容和附件的MIMEMultipart對象]
msg = MIMEMultipart()
msg["subject"] = Header("來自大牧的問候", "utf-8")
msg["from"] = _format_addr("大牧來了 <%s>" % sender)
msg["to"] = _format_addr("牟文斌 <%s>" % receiver)

# 1.設置郵件正文內容
content = MIMEText("這是郵件正文內容部分", "plain", "utf-8")
# 將正文內容添加到包裝對象中
msg.attach(content)

# 2.設置附件內容<使用本地的圖片作為附件>
with open("d:/my.jpg", "rb") as f:
    # 設置MIMEBase對象包裝附件
    attachment = MIMEBase("image", "jpg", filename="header.jpg")
    # 設置附件信息
    attachment.add_header("Content-Disposition", "attachment", filename="header.jpg")
    attachment.add_header("Content-ID", "<0>")
    attachment.add_header("X-Attachment-Id", "0")
    # 讀取附件內容
    attachment.set_payload(f.read())
    # 編碼文件
    encoders.encode_base64(attachment)
    # 添加附件到包裝對象中
    msg.attach(attachment)

# 發送郵件
server.sendmail(sender, receiver, msg.as_string())
print("郵件發送成功")

運行上述程序之后,收件箱中,收到對應的郵件內容如下:


帶了附件的郵件

這里需要注意幾個問題

  • MIMEMultipart()對象也是一種郵件對象,可以包含多個組成部分
  • MIMEText()對象主要用于進行郵件正文內容的設置,可以是純文本,可以是HTML格式
  • MIMEBase()對象主要用于進行附件的添加,常規情況下以獨立文件對象的形式作為郵件內容的一部分而存在

完成的郵件格式是包含郵件正文內容和附件的MIMEMultipart()對象


2.5. 郵件中顯示的圖片

如果我們要在郵件中添加顯示的圖片應該怎么做呢~

按照我們常規的理解,可以通過將郵件內容修改為HTML,這樣的話,圖片就可以通過

標簽插入進入了,難道不是嗎?

郵件服務商們發現了一個問題,如果在郵件中可以任意添加鏈接的話,很容易讓郵件作為一個犯罪的橋梁,把指向惡意網站或者服務的超鏈接帶入我們的PC,所以常規情況下,郵件中會自動屏蔽帶外鏈接圖片的。

那應該怎么做呢?

其實郵件中的圖片在python中處理的比較簡單,郵件中需要的圖片,通過附件的形式上傳到郵件服務器,然后根據附件的順序使用cid:num添加就可以了,語法類似![](cid:0)這是在正文中使用附件中的第一個圖片

上干貨:

# 導入需要的模塊
import email, smtplib
from email                  import encoders
from email.utils            import parseaddr, formataddr
from email.header           import Header
from email.mime.base        import MIMEBase
from email.mime.text        import MIMEText
from email.mime.multipart   import MIMEMultipart

# 定義連接郵箱服務器的信息
smtp_server = "smtp.qq.com"
smtp_user = "xxxxxxxxx@qq.com"
smtp_pass = "qq用戶如果設置了安全驗證,這里請填寫您的授權碼"

# 設置發件人、收件人
sender = smtp_user
receiver = "xxxxxx@xxxx.com"


# 設置收件人,發件人格式的方法
def _format_addr(user):
    name, addr = parseaddr(user)
    return formataddr((Header(name, "utf-8").encode(), addr))


# 連接服務器
server = smtplib.SMTP_SSL(smtp_server)
# 登錄服務器
server.login(smtp_user, smtp_pass)

# 設置郵件內容[可以包裝郵件內容和附件的MIMEMultipart對象]
msg = MIMEMultipart()
msg["subject"] = Header("來自大牧的問候", "utf-8")
msg["from"] = _format_addr("大牧來了 <%s>" % sender)
msg["to"] = _format_addr("牟文斌 <%s>" % receiver)

# 1.設置郵件正文內容
content = MIMEText("

這是郵件正文內容部分

![](cid:0)", "html", "utf-8") # 將正文內容添加到包裝對象中 msg.attach(content) # 2.設置附件內容<使用本地的圖片作為附件> with open("d:/my.jpg", "rb") as f: # 設置MIMEBase對象包裝附件 attachment = MIMEBase("image", "jpg", filename="header.jpg") # 設置附件信息 attachment.add_header("Content-Disposition", "attachment", filename="header.jpg") attachment.add_header("Content-ID", "<0>") attachment.add_header("X-Attachment-Id", "0") # 讀取附件內容 attachment.set_payload(f.read()) # 編碼文件 encoders.encode_base64(attachment) # 添加附件到包裝對象中 msg.attach(attachment) # 發送郵件 server.sendmail(sender, receiver, msg.as_string()) print("郵件發送成功")

上述代碼執行完成后,在我們的收件箱中,赤果果個的就出現了下面的結果


郵件正文內容中使用圖片

溫情提示:以上代碼都是我使用QQ郵箱進行測試過程中總結的資料,如果大家在使用其他郵箱進行驗證的過程中出現了問題,歡迎留言一起討論哦!


附錄:常見發送郵件服務器

| 郵箱|smtp服務器 |端口|
常用的郵箱服務器(SMTP、POP3)地址、端口
sina.com:
POP3服務器地址:pop3.sina.com.cn(端口:110)
SMTP服務器地址:smtp.sina.com.cn(端口:25)

sinaVIP:
POP3服務器:pop3.vip.sina.com (端口:110)
SMTP服務器:smtp.vip.sina.com (端口:25)

sohu.com:
POP3服務器地址:pop3.sohu.com(端口:110)
SMTP服務器地址:smtp.sohu.com(端口:25)

126郵箱:
POP3服務器地址:pop.126.com(端口:110)
SMTP服務器地址:smtp.126.com(端口:25)

139郵箱:
POP3服務器地址:POP.139.com(端口:110)
SMTP服務器地址:SMTP.139.com(端口:25)

163.com:
POP3服務器地址:pop.163.com(端口:110)
SMTP服務器地址:smtp.163.com(端口:25)

QQ郵箱
POP3服務器地址:pop.qq.com(端口:110)
SMTP服務器地址:smtp.qq.com (端口:25)

QQ企業郵箱
POP3服務器地址:pop.exmail.qq.com (SSL啟用 端口:995)
SMTP服務器地址:smtp.exmail.qq.com(SSL啟用 端口:587/465)

yahoo.com:
POP3服務器地址:pop.mail.yahoo.com
SMTP服務器地址:smtp.mail.yahoo.com

yahoo.com.cn:
POP3服務器地址:pop.mail.yahoo.com.cn(端口:995)
SMTP服務器地址:smtp.mail.yahoo.com.cn(端口:587

HotMail
POP3服務器地址:pop3.live.com (端口:995)
SMTP服務器地址:smtp.live.com (端口:587)

gmail(google.com)
POP3服務器地址:pop.gmail.com(SSL啟用 端口:995)
SMTP服務器地址:smtp.gmail.com(SSL啟用 端口:587)

263.net:
POP3服務器地址:pop3.263.net(端口:110)
SMTP服務器地址:smtp.263.net(端口:25)

263.net.cn:
POP3服務器地址:pop.263.net.cn(端口:110)
SMTP服務器地址:smtp.263.net.cn(端口:25)

x263.net:
POP3服務器地址:pop.x263.net(端口:110)
SMTP服務器地址:smtp.x263.net(端口:25)

21cn.com:
POP3服務器地址:pop.21cn.com(端口:110)
SMTP服務器地址:smtp.21cn.com(端口:25)

Foxmail:
POP3服務器地址:POP.foxmail.com(端口:110)
SMTP服務器地址:SMTP.foxmail.com(端口:25)

china.com:
POP3服務器地址:pop.china.com(端口:110)
SMTP服務器地址:smtp.china.com(端口:25)

tom.com:
POP3服務器地址:pop.tom.com(端口:110)
SMTP服務器地址:smtp.tom.com(端口:25)

etang.com:
POP3服務器地址:pop.etang.com
SMTP服務器地址:smtp.etang.com

>>>更多VR/AR入門教程:VR入門

 
精品久久久久久久久久久院品网_男女男精品视频_日韩**一区毛片_在线免费不卡电影_亚洲少妇屁股交4_久久国内精品视频_日韩一区二区三免费高清_亚洲成人手机在线_91看片淫黄大片一级在线观看_中文字幕亚洲在_日本一区二区在线不卡_欧美酷刑日本凌虐凌虐_理论电影国产精品_国产精品视频yy9299一区_99久久精品免费观看_国产精品久久三
亚洲情趣在线观看| 国产日韩欧美一区二区三区四区| 国产精品丝袜一区| 久久精品欧美一区二区三区不卡 | 久久国产剧场电影| 日本不卡视频在线观看| 热久久免费视频| 国产一区欧美二区| a在线欧美一区| 国产精品区一区二区三含羞草| 国产一级二级三级精品| 日本10禁啪啪无遮挡免费一区二区| 日韩av电影在线观看| 一区二区三区av| 欧美挠脚心视频网站| 26uuu国产电影一区二区| 国产精品麻豆久久久| 亚洲电影视频在线| 九九精品一区二区| 99久久99久久精品免费观看| 国产66精品久久久久999小说| 另类小说综合网| 色综合天天天天做夜夜夜夜做| 欧美日韩国产小视频在线观看| 欧美r级在线观看| 中文字幕一区二区三| 日韩一区精品视频| 成人激情综合网站| 国模精品娜娜一二三区| 一本色道久久加勒比精品| 欧美一区二区三区四区在线观看| 日本一区二区三区国色天香| 午夜视频在线观看一区| 高清久久久久久| 欧洲亚洲一区二区三区四区五区| 欧美日韩国产一区| 国产精品成人免费在线| 日本不卡1234视频| 成人一区二区在线| 欧亚洲嫩模精品一区三区| 国产日韩精品久久久| 午夜亚洲国产au精品一区二区| 成人手机在线视频| 欧美亚洲精品日韩| 欧美mv日韩mv国产网站app| 亚洲午夜久久久久久久久电影网 | 欧美亚洲免费高清在线观看 | 黄色一区三区| 欧美精品一级二级三级| 亚洲日本va午夜在线电影| 国产乱子轮精品视频| 日本精品二区| 26uuu色噜噜精品一区二区| 丝瓜av网站精品一区二区| av高清久久久| 欧美影片第一页| 中文字幕一区二区三区精华液 | 国产精品久久久久久久第一福利| 日韩精品高清不卡| 国产精品国产一区二区| 伊人色综合影院| 国产偷国产偷精品高清尤物| 精品亚洲成a人在线观看| 免费亚洲一区二区| 久久美女高清视频| 国产一区二区久久| 色综合久久久久综合体| 国产精品国产三级国产普通话蜜臀| 国产精品中文字幕一区二区三区| 日韩aⅴ视频一区二区三区| 国产丝袜欧美中文另类| 国产精品一区二区三区四区 | av在线不卡观看免费观看| 91传媒视频在线播放| 亚洲欧美日韩国产综合在线| 成人国产亚洲欧美成人综合网| 欧美亚洲国产一卡| 亚洲国产精品久久久久婷婷884| 肥熟一91porny丨九色丨| 日韩免费看网站| 国产精品自拍毛片| 欧美最猛性xxxxx直播| 亚洲在线免费播放| 国产三级精品在线不卡| 久久久久国产精品免费免费搜索| 韩国成人精品a∨在线观看| 中文字幕一区二区三区四区五区六区 | 一本久久综合亚洲鲁鲁五月天| 国产精品久久三| 成人国产精品免费网站| 91精品国产高清一区二区三区| 日韩综合一区二区| 亚洲一区3d动漫同人无遮挡| 中文字幕亚洲一区二区av在线| 91视频国产资源| 精品欧美黑人一区二区三区| 国产精品一二三四| 欧美一区二区三区免费| 国产福利一区二区三区在线视频| 欧美美女黄视频| 国产高清一区日本| 91精品国产乱| 成人黄页毛片网站| wwww国产精品欧美| 91在线精品观看| 国产女人aaa级久久久级| 国产高清精品一区二区三区| 亚洲国产精品国自产拍av| 国产精品乱码视频| 亚洲视频免费在线| 日韩国产欧美一区| 婷婷综合另类小说色区| 色偷偷久久一区二区三区| 人人超碰91尤物精品国产| 欧美在线观看视频在线| 国产酒店精品激情| 久久久久久久综合色一本| 成人自拍网站| 亚洲精品一二三区| 色噜噜狠狠一区二区三区果冻| 久久国产福利国产秒拍| 日韩午夜小视频| caoporn国产精品免费公开| 国产精品视频yy9299一区| 久久精品日产第一区二区三区精品版 | 欧美在线一区二区三区四区| 午夜一区二区三区在线观看| 亚洲人成网站在线观看播放| 男女性色大片免费观看一区二区 | 中文字幕乱码一区二区免费| 国产女主播一区二区| 一区二区国产盗摄色噜噜| 一区在线电影| 成熟亚洲日本毛茸茸凸凹| 26uuuu精品一区二区| 久久精品99| 日韩影院在线观看| 欧美成人性战久久| 国产在线一区二区三区播放| 天堂va蜜桃一区二区三区 | 久久国产尿小便嘘嘘尿| 337p粉嫩大胆噜噜噜噜噜91av | 免费久久精品视频| 欧美不卡一区二区三区四区| 久久精品日产第一区二区三区精品版 | 国产成都精品91一区二区三| 国产视频在线观看一区二区三区| 欧美久久综合性欧美| 麻豆精品一二三| 久久嫩草精品久久久精品一| 亚洲日本无吗高清不卡| 丁香网亚洲国际| 亚洲香肠在线观看| 在线不卡一区二区| 国产美女99p| 国产一区二区精品久久91| 国产精品护士白丝一区av| 在线观看一区二区视频| 国产精品swag| 捆绑变态av一区二区三区| 国产精品久久久久久妇女6080| 欧美视频一区在线| 久久精品女人的天堂av| 国产毛片一区二区| 夜夜夜精品看看| 久久久亚洲国产美女国产盗摄 | 综合色中文字幕| 欧美精品高清视频| 少妇免费毛片久久久久久久久| 成人自拍视频在线观看| 亚洲国产你懂的| 亚洲精品在线观| 在线观看91视频| 久久亚洲午夜电影| 国产成人啪免费观看软件 | 精品在线你懂的| 自拍偷在线精品自拍偷无码专区| 69精品人人人人| 亚洲午夜精品福利| 国产伦精品一区二区三毛| 国产成人在线网站| 午夜成人在线视频| 中文字幕av不卡| 91精品国产综合久久久蜜臀粉嫩 | 久久影院理伦片| 国产精品18久久久久| 亚洲成人资源网| 亚洲欧洲韩国日本视频| 精品国产伦理网| 欧美高清视频一二三区 | 999日本视频| 国产99久久久精品| 日韩精品一二三区| 亚洲精品欧美综合四区| 国产亚洲精久久久久久| 欧美一级高清片| 欧美日韩成人激情| 欧美日韩一区小说| 91久久精品午夜一区二区| 五月天国产一区|