3atv精品不卡视频,97人人超碰国产精品最新,中文字幕av一区二区三区人妻少妇,久久久精品波多野结衣,日韩一区二区三区精品

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

Python开发【第八篇】:网络编程 Socket

發(fā)布時間:2025/7/14 python 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python开发【第八篇】:网络编程 Socket 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Socket

socket通常也稱作"套接字",用于描述IP地址和端口,是一個通信鏈的句柄,應(yīng)用程序通常通過"套接字"向網(wǎng)絡(luò)發(fā)出請求或者應(yīng)答網(wǎng)絡(luò)請求。

socket起源于Unix,而Unix/Linux基本哲學(xué)之一就是“一切皆文件”,對于文件用【打開】【讀寫】【關(guān)閉】模式來操作。socket就是該模式的一個實現(xiàn),socket即是一種特殊的文件,一些socket函數(shù)就是對其進行的操作(讀/寫IO、打開、關(guān)閉)

socket和file的區(qū)別:

  • file模塊是針對某個指定文件進行【打開】【讀寫】【關(guān)閉】
  • socket模塊是針對 服務(wù)器端 和 客戶端Socket 進行【打開】【讀寫】【關(guān)閉】

?

#!/usr/bin/env python # -*- coding:utf-8 -*-import socket ip_port = ('127.0.0.1',9999) sk = socket.socket() sk.bind(ip_port) sk.listen(5) while True: print 'server waiting...' conn,addr = sk.accept() client_data = conn.recv(1024) print client_data conn.sendall('不要回答,不要回答,不要回答') conn.close() socket server #!/usr/bin/env python # -*- coding:utf-8 -*- import socket ip_port = ('127.0.0.1',9999) sk = socket.socket() sk.connect(ip_port) sk.sendall('請求占領(lǐng)地球') server_reply = sk.recv(1024) print server_reply sk.close() socket client

WEB服務(wù)應(yīng)用:

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #!/usr/bin/env python #coding:utf-8 import socket def handle_request(client): ????buf = client.recv(1024) ????client.send("HTTP/1.1 200 OK\r\n\r\n") ????client.send("Hello, World") def main(): ????sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ????sock.bind(('localhost',8080)) ????sock.listen(5) ????while True: ????????connection, address = sock.accept() ????????handle_request(connection) ????????connection.close() if __name__ == '__main__': ??main()

更多功能

sk = socket.socket(socket.AF_INET,socket.SOCK_STREAM,0)

參數(shù)一:地址簇

  socket.AF_INET IPv4(默認(rèn))   socket.AF_INET6 IPv6

  socket.AF_UNIX 只能夠用于單一的Unix系統(tǒng)進程間通信

參數(shù)二:類型

  socket.SOCK_STREAM  流式socket , for TCP (默認(rèn))   socket.SOCK_DGRAM   數(shù)據(jù)報式socket , for UDP

  socket.SOCK_RAW 原始套接字,普通的套接字無法處理ICMP、IGMP等網(wǎng)絡(luò)報文,而SOCK_RAW可以;其次,SOCK_RAW也可以處理特殊的IPv4報文;此外,利用原始套接字,可以通過IP_HDRINCL套接字選項由用戶構(gòu)造IP頭。   socket.SOCK_RDM 是一種可靠的UDP形式,即保證交付數(shù)據(jù)報但不保證順序。SOCK_RAM用來提供對原始協(xié)議的低級訪問,在需要執(zhí)行某些特殊操作時使用,如發(fā)送ICMP報文。SOCK_RAM通常僅限于高級用戶或管理員運行的程序使用。   socket.SOCK_SEQPACKET 可靠的連續(xù)數(shù)據(jù)包服務(wù)

參數(shù)三:協(xié)議

  0  (默認(rèn))與特定的地址家族相關(guān)的協(xié)議,如果是 0 ,則系統(tǒng)就會根據(jù)地址格式和套接類別,自動選擇一個合適的協(xié)議

import socket ip_port = ('127.0.0.1',9999) sk = socket.socket(socket.AF_INET,socket.SOCK_DGRAM,0) sk.bind(ip_port) while True: data = sk.recv(1024) print data import socket ip_port = ('127.0.0.1',9999) sk = socket.socket(socket.AF_INET,socket.SOCK_DGRAM,0) while True: inp = raw_input('數(shù)據(jù):').strip() if inp == 'exit': break sk.sendto(inp,ip_port) sk.close() UDP Demo

sk.bind(address)

  s.bind(address) 將套接字綁定到地址。address地址的格式取決于地址族。在AF_INET下,以元組(host,port)的形式表示地址。

sk.listen(backlog)

  開始監(jiān)聽傳入連接。backlog指定在拒絕連接之前,可以掛起的最大連接數(shù)量。

? ? ? backlog等于5,表示內(nèi)核已經(jīng)接到了連接請求,但服務(wù)器還沒有調(diào)用accept進行處理的連接個數(shù)最大為5 ? ? ? 這個值不能無限大,因為要在內(nèi)核中維護連接隊列

sk.setblocking(bool)

  是否阻塞(默認(rèn)True),如果設(shè)置False,那么accept和recv時一旦無數(shù)據(jù),則報錯。

sk.accept()

  接受連接并返回(conn,address),其中conn是新的套接字對象,可以用來接收和發(fā)送數(shù)據(jù)。address是連接客戶端的地址。

  接收TCP 客戶的連接(阻塞式)等待連接的到來

sk.connect(address)

  連接到address處的套接字。一般,address的格式為元組(hostname,port),如果連接出錯,返回socket.error錯誤。

sk.connect_ex(address)

  同上,只不過會有返回值,連接成功時返回 0 ,連接失敗時候返回編碼,例如:10061

sk.close()

  關(guān)閉套接字

sk.recv(bufsize[,flag])

  接受套接字的數(shù)據(jù)。數(shù)據(jù)以字符串形式返回,bufsize指定最多可以接收的數(shù)量。flag提供有關(guān)消息的其他信息,通??梢院雎浴?/p>

sk.recvfrom(bufsize[.flag])

  與recv()類似,但返回值是(data,address)。其中data是包含接收數(shù)據(jù)的字符串,address是發(fā)送數(shù)據(jù)的套接字地址。

sk.send(string[,flag])

  將string中的數(shù)據(jù)發(fā)送到連接的套接字。返回值是要發(fā)送的字節(jié)數(shù)量,該數(shù)量可能小于string的字節(jié)大小。即:可能未將指定內(nèi)容全部發(fā)送。

sk.sendall(string[,flag])

  將string中的數(shù)據(jù)發(fā)送到連接的套接字,但在返回之前會嘗試發(fā)送所有數(shù)據(jù)。成功返回None,失敗則拋出異常。

? ? ? 內(nèi)部通過遞歸調(diào)用send,將所有內(nèi)容發(fā)送出去。

sk.sendto(string[,flag],address)

  將數(shù)據(jù)發(fā)送到套接字,address是形式為(ipaddr,port)的元組,指定遠(yuǎn)程地址。返回值是發(fā)送的字節(jié)數(shù)。該函數(shù)主要用于UDP協(xié)議。

sk.settimeout(timeout)

  設(shè)置套接字操作的超時期,timeout是一個浮點數(shù),單位是秒。值為None表示沒有超時期。一般,超時期應(yīng)該在剛創(chuàng)建套接字時設(shè)置,因為它們可能用于連接的操作(如 client 連接最多等待5s )

sk.getpeername()

  返回連接套接字的遠(yuǎn)程地址。返回值通常是元組(ipaddr,port)。

sk.getsockname()

  返回套接字自己的地址。通常是一個元組(ipaddr,port)

sk.fileno()

  套接字的文件描述符

# 服務(wù)端 import socket ip_port = ('127.0.0.1',9999) sk = socket.socket(socket.AF_INET,socket.SOCK_DGRAM,0) sk.bind(ip_port) while True: data,(host,port) = sk.recvfrom(1024) print(data,host,port) sk.sendto(bytes('ok', encoding='utf-8'), (host,port)) #客戶端 import socket ip_port = ('127.0.0.1',9999) sk = socket.socket(socket.AF_INET,socket.SOCK_DGRAM,0) while True: inp = input('數(shù)據(jù):').strip() if inp == 'exit': break sk.sendto(bytes(inp, encoding='utf-8'),ip_port) data = sk.recvfrom(1024) print(data) sk.close() UDP

實例:智能機器人

#!/usr/bin/env python # -*- coding:utf-8 -*-import socket ip_port = ('127.0.0.1',8888) sk = socket.socket() sk.bind(ip_port) sk.listen(5) while True: conn,address = sk.accept() conn.sendall('歡迎致電 10086,請輸入1xxx,0轉(zhuǎn)人工服務(wù).') Flag = True while Flag: data = conn.recv(1024) if data == 'exit': Flag = False elif data == '0': conn.sendall('通過可能會被錄音.balabala一大推') else: conn.sendall('請重新輸入.') conn.close() 服務(wù)端 #!/usr/bin/env python # -*- coding:utf-8 -*-import socket ip_port = ('127.0.0.1',8005) sk = socket.socket() sk.connect(ip_port) sk.settimeout(5) while True: data = sk.recv(1024) print 'receive:',data inp = raw_input('please input:') sk.sendall(inp) if inp == 'exit': break sk.close() 客戶端

IO多路復(fù)用

I/O多路復(fù)用指:通過一種機制,可以監(jiān)視多個描述符,一旦某個描述符就緒(一般是讀就緒或者寫就緒),能夠通知程序進行相應(yīng)的讀寫操作。

Linux

Linux中的?select,poll,epoll 都是IO多路復(fù)用的機制。

+ View Code?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 select select最早于1983年出現(xiàn)在4.2BSD中,它通過一個select()系統(tǒng)調(diào)用來監(jiān)視多個文件描述符的數(shù)組,當(dāng)select()返回后,該數(shù)組中就緒的文件描述符便會被內(nèi)核修改標(biāo)志位,使得進程可以獲得這些文件描述符從而進行后續(xù)的讀寫操作。 select目前幾乎在所有的平臺上支持,其良好跨平臺支持也是它的一個優(yōu)點,事實上從現(xiàn)在看來,這也是它所剩不多的優(yōu)點之一。 select的一個缺點在于單個進程能夠監(jiān)視的文件描述符的數(shù)量存在最大限制,在Linux上一般為1024,不過可以通過修改宏定義甚至重新編譯內(nèi)核的方式提升這一限制。 另外,select()所維護的存儲大量文件描述符的數(shù)據(jù)結(jié)構(gòu),隨著文件描述符數(shù)量的增大,其復(fù)制的開銷也線性增長。同時,由于網(wǎng)絡(luò)響應(yīng)時間的延遲使得大量TCP連接處于非活躍狀態(tài),但調(diào)用select()會對所有socket進行一次線性掃描,所以這也浪費了一定的開銷。 poll poll在1986年誕生于System V Release 3,它和select在本質(zhì)上沒有多大差別,但是poll沒有最大文件描述符數(shù)量的限制。 poll和select同樣存在一個缺點就是,包含大量文件描述符的數(shù)組被整體復(fù)制于用戶態(tài)和內(nèi)核的地址空間之間,而不論這些文件描述符是否就緒,它的開銷隨著文件描述符數(shù)量的增加而線性增大。 另外,select()和poll()將就緒的文件描述符告訴進程后,如果進程沒有對其進行IO操作,那么下次調(diào)用select()和poll()的時候?qū)⒃俅螆蟾孢@些文件描述符,所以它們一般不會丟失就緒的消息,這種方式稱為水平觸發(fā)(Level Triggered)。 epoll 直到Linux2.6才出現(xiàn)了由內(nèi)核直接支持的實現(xiàn)方法,那就是epoll,它幾乎具備了之前所說的一切優(yōu)點,被公認(rèn)為Linux2.6下性能最好的多路I/O就緒通知方法。 epoll可以同時支持水平觸發(fā)和邊緣觸發(fā)(Edge Triggered,只告訴進程哪些文件描述符剛剛變?yōu)榫途w狀態(tài),它只說一遍,如果我們沒有采取行動,那么它將不會再次告知,這種方式稱為邊緣觸發(fā)),理論上邊緣觸發(fā)的性能要更高一些,但是代碼實現(xiàn)相當(dāng)復(fù)雜。 epoll同樣只告知那些就緒的文件描述符,而且當(dāng)我們調(diào)用epoll_wait()獲得就緒文件描述符時,返回的不是實際的描述符,而是一個代表就緒描述符數(shù)量的值,你只需要去epoll指定的一個數(shù)組中依次取得相應(yīng)數(shù)量的文件描述符即可,這里也使用了內(nèi)存映射(mmap)技術(shù),這樣便徹底省掉了這些文件描述符在系統(tǒng)調(diào)用時復(fù)制的開銷。 另一個本質(zhì)的改進在于epoll采用基于事件的就緒通知方式。在select/poll中,進程只有在調(diào)用一定的方法后,內(nèi)核才對所有監(jiān)視的文件描述符進行掃描,而epoll事先通過epoll_ctl()來注冊一個文件描述符,一旦基于某個文件描述符就緒時,內(nèi)核會采用類似callback的回調(diào)機制,迅速激活這個文件描述符,當(dāng)進程調(diào)用epoll_wait()時便得到通知。

Python

Python中有一個select模塊,其中提供了:select、poll、epoll三個方法,分別調(diào)用系統(tǒng)的?select,poll,epoll 從而實現(xiàn)IO多路復(fù)用。

?
1 2 3 4 5 6 Windows Python: ????提供: select Mac Python: ????提供: select Linux Python: ????提供: select、poll、epoll

注意:網(wǎng)絡(luò)操作、文件操作、終端操作等均屬于IO操作,對于windows只支持Socket操作,其他系統(tǒng)支持其他IO操作,但是無法檢測 普通文件操作 自動上次讀取是否已經(jīng)變化。

對于select方法:

?
1 2 3 4 5 6 7 8 9 10 11 句柄列表11, 句柄列表22, 句柄列表33 = select.select(句柄序列1, 句柄序列2, 句柄序列3, 超時時間) 參數(shù): 可接受四個參數(shù)(前三個必須) 返回值:三個列表 select方法用來監(jiān)視文件句柄,如果句柄發(fā)生變化,則獲取該句柄。 1、當(dāng) 參數(shù)1 序列中的句柄發(fā)生可讀時(accetp和read),則獲取發(fā)生變化的句柄并添加到 返回值1 序列中 2、當(dāng) 參數(shù)2 序列中含有句柄時,則將該序列中所有的句柄添加到 返回值2 序列中 3、當(dāng) 參數(shù)3 序列中的句柄發(fā)生錯誤時,則將該發(fā)生錯誤的句柄添加到 返回值3 序列中 4、當(dāng) 超時時間 未設(shè)置,則select會一直阻塞,直到監(jiān)聽的句柄發(fā)生變化 ???當(dāng) 超時時間 = 1時,那么如果監(jiān)聽的句柄均無任何變化,則select會阻塞 1 秒,之后返回三個空列表,如果監(jiān)聽的句柄有變化,則直接執(zhí)行。
#!/usr/bin/env python # -*- coding:utf-8 -*-import select import threading import sys while True: readable, writeable, error = select.select([sys.stdin,],[],[],1) if sys.stdin in readable: print 'select get stdin',sys.stdin.readline() 利用select監(jiān)聽終端操作實例 #!/usr/bin/env python # -*- coding:utf-8 -*-import socket import select sk1 = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sk1.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) sk1.bind(('127.0.0.1',8002)) sk1.listen(5) sk1.setblocking(0) inputs = [sk1,] while True: readable_list, writeable_list, error_list = select.select(inputs, [], inputs, 1) for r in readable_list: # 當(dāng)客戶端第一次連接服務(wù)端時 if sk1 == r: print 'accept' request, address = r.accept() request.setblocking(0) inputs.append(request) # 當(dāng)客戶端連接上服務(wù)端之后,再次發(fā)送數(shù)據(jù)時 else: received = r.recv(1024) # 當(dāng)正常接收客戶端發(fā)送的數(shù)據(jù)時 if received: print 'received data:', received # 當(dāng)客戶端關(guān)閉程序時 else: inputs.remove(r) sk1.close() 利用select實現(xiàn)偽同時處理多個Socket客戶端請求:服務(wù)端 #!/usr/bin/env python # -*- coding:utf-8 -*- import socket ip_port = ('127.0.0.1',8002) sk = socket.socket() sk.connect(ip_port) while True: inp = raw_input('please input:') sk.sendall(inp) sk.close() 利用select實現(xiàn)偽同時處理多個Socket客戶端請求:客戶端

此處的Socket服務(wù)端相比與原生的Socket,他支持當(dāng)某一個請求不再發(fā)送數(shù)據(jù)時,服務(wù)器端不會等待而是可以去處理其他請求的數(shù)據(jù)。但是,如果每個請求的耗時比較長時,select版本的服務(wù)器端也無法完成同時操作。

#!/usr/bin/env python #coding:utf8''' 服務(wù)器的實現(xiàn) 采用select的方式 ''' import select import socket import sys import Queue #創(chuàng)建套接字并設(shè)置該套接字為非阻塞模式 server = socket.socket(socket.AF_INET,socket.SOCK_STREAM) server.setblocking(0) #綁定套接字 server_address = ('localhost',10000) print >>sys.stderr,'starting up on %s port %s'% server_address server.bind(server_address) #將該socket變成服務(wù)模式 #backlog等于5,表示內(nèi)核已經(jīng)接到了連接請求,但服務(wù)器還沒有調(diào)用accept進行處理的連接個數(shù)最大為5 #這個值不能無限大,因為要在內(nèi)核中維護連接隊列 server.listen(5) #初始化讀取數(shù)據(jù)的監(jiān)聽列表,最開始時希望從server這個套接字上讀取數(shù)據(jù) inputs = [server] #初始化寫入數(shù)據(jù)的監(jiān)聽列表,最開始并沒有客戶端連接進來,所以列表為空 outputs = [] #要發(fā)往客戶端的數(shù)據(jù) message_queues = {} while inputs: print >>sys.stderr,'waiting for the next event' #調(diào)用select監(jiān)聽所有監(jiān)聽列表中的套接字,并將準(zhǔn)備好的套接字加入到對應(yīng)的列表中 readable,writable,exceptional = select.select(inputs,outputs,inputs)#列表中的socket 套接字 如果是文件呢? #監(jiān)控文件句柄有某一處發(fā)生了變化 可寫 可讀 異常屬于Linux中的網(wǎng)絡(luò)編程 #屬于同步I/O操作,屬于I/O復(fù)用模型的一種 #rlist--等待到準(zhǔn)備好讀 #wlist--等待到準(zhǔn)備好寫 #xlist--等待到一種異常 #處理可讀取的套接字 ''' 如果server這個套接字可讀,則說明有新鏈接到來 此時在server套接字上調(diào)用accept,生成一個與客戶端通訊的套接字 并將與客戶端通訊的套接字加入inputs列表,下一次可以通過select檢查連接是否可讀 然后在發(fā)往客戶端的緩沖中加入一項,鍵名為:與客戶端通訊的套接字,鍵值為空隊列 select系統(tǒng)調(diào)用是用來讓我們的程序監(jiān)視多個文件句柄(file descrīptor)的狀態(tài)變化的。程序會停在select這里等待, 直到被監(jiān)視的文件句柄有某一個或多個發(fā)生了狀態(tài)改變 ''' ''' 若可讀的套接字不是server套接字,有兩種情況:一種是有數(shù)據(jù)到來,另一種是鏈接斷開 如果有數(shù)據(jù)到來,先接收數(shù)據(jù),然后將收到的數(shù)據(jù)填入往客戶端的緩存區(qū)中的對應(yīng)位置,最后 將于客戶端通訊的套接字加入到寫數(shù)據(jù)的監(jiān)聽列表: 如果套接字可讀.但沒有接收到數(shù)據(jù),則說明客戶端已經(jīng)斷開。這時需要關(guān)閉與客戶端連接的套接字 進行資源清理 ''' for s in readable: if s is server: connection,client_address = s.accept() print >>sys.stderr,'connection from',client_address connection.setblocking(0)#設(shè)置非阻塞 inputs.append(connection) message_queues[connection] = Queue.Queue() else: data = s.recv(1024) if data: print >>sys.stderr,'received "%s" from %s'% \ (data,s.getpeername()) message_queues[s].put(data) if s not in outputs: outputs.append(s) else: print >>sys.stderr,'closing',client_address if s in outputs: outputs.remove(s) inputs.remove(s) s.close() del message_queues[s] #處理可寫的套接字 ''' 在發(fā)送緩沖區(qū)中取出響應(yīng)的數(shù)據(jù),發(fā)往客戶端。 如果沒有數(shù)據(jù)需要寫,則將套接字從發(fā)送隊列中移除,select中不再監(jiān)視 ''' for s in writable: try: next_msg = message_queues[s].get_nowait() except Queue.Empty: print >>sys.stderr,' ',s,getpeername(),'queue empty' outputs.remove(s) else: print >>sys.stderr,'sending "%s" to %s'% \ (next_msg,s.getpeername()) s.send(next_msg) #處理異常情況 for s in exceptional: for s in exceptional: print >>sys.stderr,'exception condition on',s.getpeername() inputs.remove(s) if s in outputs: outputs.remove(s) s.close() del message_queues[s] 基于select實現(xiàn)socket服務(wù)端

SocketServer模塊

SocketServer內(nèi)部使用 IO多路復(fù)用 以及 “多線程” 和 “多進程” ,從而實現(xiàn)并發(fā)處理多個客戶端請求的Socket服務(wù)端。即:每個客戶端請求連接到服務(wù)器時,Socket服務(wù)端都會在服務(wù)器是創(chuàng)建一個“線程”或者“進程” 專門負(fù)責(zé)處理當(dāng)前客戶端的所有請求。

ThreadingTCPServer

ThreadingTCPServer實現(xiàn)的Soket服務(wù)器內(nèi)部會為每個client創(chuàng)建一個 “線程”,該線程用來和客戶端進行交互。

1、ThreadingTCPServer基礎(chǔ)

使用ThreadingTCPServer:

  • 創(chuàng)建一個繼承自 SocketServer.BaseRequestHandler 的類
  • 類中必須定義一個名稱為 handle 的方法
  • 啟動ThreadingTCPServer
#!/usr/bin/env python # -*- coding:utf-8 -*- import SocketServer class MyServer(SocketServer.BaseRequestHandler): def handle(self): # print self.request,self.client_address,self.server conn = self.request conn.sendall('歡迎致電 10086,請輸入1xxx,0轉(zhuǎn)人工服務(wù).') Flag = True while Flag: data = conn.recv(1024) if data == 'exit': Flag = False elif data == '0': conn.sendall('通過可能會被錄音.balabala一大推') else: conn.sendall('請重新輸入.') if __name__ == '__main__': server = SocketServer.ThreadingTCPServer(('127.0.0.1',8009),MyServer) server.serve_forever() SocketServer實現(xiàn)服務(wù)器 #!/usr/bin/env python # -*- coding:utf-8 -*-import socket ip_port = ('127.0.0.1',8009) sk = socket.socket() sk.connect(ip_port) sk.settimeout(5) while True: data = sk.recv(1024) print 'receive:',data inp = raw_input('please input:') sk.sendall(inp) if inp == 'exit': break sk.close() 客戶端

2、ThreadingTCPServer源碼剖析

ThreadingTCPServer的類圖關(guān)系如下:

?

內(nèi)部調(diào)用流程為:

  • 啟動服務(wù)端程序
  • 執(zhí)行 TCPServer.__init__ 方法,創(chuàng)建服務(wù)端Socket對象并綁定 IP 和 端口
  • 執(zhí)行 BaseServer.__init__ 方法,將自定義的繼承自SocketServer.BaseRequestHandler 的類 MyRequestHandle賦值給 self.RequestHandlerClass
  • 執(zhí)行 BaseServer.server_forever 方法,While 循環(huán)一直監(jiān)聽是否有客戶端請求到達(dá) ...
  • 當(dāng)客戶端連接到達(dá)服務(wù)器
  • 執(zhí)行 ThreadingMixIn.process_request 方法,創(chuàng)建一個 “線程” 用來處理請求
  • 執(zhí)行?ThreadingMixIn.process_request_thread 方法
  • 執(zhí)行 BaseServer.finish_request 方法,執(zhí)行?self.RequestHandlerClass() ?即:執(zhí)行 自定義 MyRequestHandler 的構(gòu)造方法(自動調(diào)用基類BaseRequestHandler的構(gòu)造方法,在該構(gòu)造方法中又會調(diào)用 MyRequestHandler的handle方法)

ThreadingTCPServer相關(guān)源碼:

class BaseServer:"""Base class for server classes.Methods for the caller:- __init__(server_address, RequestHandlerClass)- serve_forever(poll_interval=0.5)- shutdown()- handle_request() # if you do not use serve_forever()- fileno() -> int # for select()Methods that may be overridden:- server_bind()- server_activate()- get_request() -> request, client_address- handle_timeout()- verify_request(request, client_address)- server_close()- process_request(request, client_address)- shutdown_request(request)- close_request(request)- handle_error()Methods for derived classes:- finish_request(request, client_address)Class variables that may be overridden by derived classes orinstances:- timeout- address_family- socket_type- allow_reuse_addressInstance variables:- RequestHandlerClass- socket""" timeout = None def __init__(self, server_address, RequestHandlerClass): """Constructor. May be extended, do not override.""" self.server_address = server_address self.RequestHandlerClass = RequestHandlerClass self.__is_shut_down = threading.Event() self.__shutdown_request = False def server_activate(self): """Called by constructor to activate the server. May be overridden. """ pass def serve_forever(self, poll_interval=0.5): """Handle one request at a time until shutdown. Polls for shutdown every poll_interval seconds. Ignores self.timeout. If you need to do periodic tasks, do them in another thread. """ self.__is_shut_down.clear() try: while not self.__shutdown_request: # XXX: Consider using another file descriptor or # connecting to the socket to wake this up instead of # polling. Polling reduces our responsiveness to a # shutdown request and wastes cpu at all other times. r, w, e = _eintr_retry(select.select, [self], [], [], poll_interval) if self in r: self._handle_request_noblock() finally: self.__shutdown_request = False self.__is_shut_down.set() def shutdown(self): """Stops the serve_forever loop. Blocks until the loop has finished. This must be called while serve_forever() is running in another thread, or it will deadlock. """ self.__shutdown_request = True self.__is_shut_down.wait() # The distinction between handling, getting, processing and # finishing a request is fairly arbitrary. Remember: # # - handle_request() is the top-level call. It calls # select, get_request(), verify_request() and process_request() # - get_request() is different for stream or datagram sockets # - process_request() is the place that may fork a new process # or create a new thread to finish the request # - finish_request() instantiates the request handler class; # this constructor will handle the request all by itself def handle_request(self): """Handle one request, possibly blocking. Respects self.timeout. """ # Support people who used socket.settimeout() to escape # handle_request before self.timeout was available. timeout = self.socket.gettimeout() if timeout is None: timeout = self.timeout elif self.timeout is not None: timeout = min(timeout, self.timeout) fd_sets = _eintr_retry(select.select, [self], [], [], timeout) if not fd_sets[0]: self.handle_timeout() return self._handle_request_noblock() def _handle_request_noblock(self): """Handle one request, without blocking. I assume that select.select has returned that the socket is readable before this function was called, so there should be no risk of blocking in get_request(). """ try: request, client_address = self.get_request() except socket.error: return if self.verify_request(request, client_address): try: self.process_request(request, client_address) except: self.handle_error(request, client_address) self.shutdown_request(request) def handle_timeout(self): """Called if no new request arrives within self.timeout. Overridden by ForkingMixIn. """ pass def verify_request(self, request, client_address): """Verify the request. May be overridden. Return True if we should proceed with this request. """ return True def process_request(self, request, client_address): """Call finish_request. Overridden by ForkingMixIn and ThreadingMixIn. """ self.finish_request(request, client_address) self.shutdown_request(request) def server_close(self): """Called to clean-up the server. May be overridden. """ pass def finish_request(self, request, client_address): """Finish one request by instantiating RequestHandlerClass.""" self.RequestHandlerClass(request, client_address, self) def shutdown_request(self, request): """Called to shutdown and close an individual request.""" self.close_request(request) def close_request(self, request): """Called to clean up an individual request.""" pass def handle_error(self, request, client_address): """Handle an error gracefully. May be overridden. The default is to print a traceback and continue. """ print '-'*40 print 'Exception happened during processing of request from', print client_address import traceback traceback.print_exc() # XXX But this goes to stderr! print '-'*40 BaseServer class TCPServer(BaseServer):"""Base class for various socket-based server classes.Defaults to synchronous IP stream (i.e., TCP).Methods for the caller:- __init__(server_address, RequestHandlerClass, bind_and_activate=True)- serve_forever(poll_interval=0.5)- shutdown()- handle_request() # if you don't use serve_forever()- fileno() -> int # for select()Methods that may be overridden:- server_bind()- server_activate()- get_request() -> request, client_address- handle_timeout()- verify_request(request, client_address)- process_request(request, client_address)- shutdown_request(request)- close_request(request)- handle_error()Methods for derived classes:- finish_request(request, client_address)Class variables that may be overridden by derived classes orinstances:- timeout- address_family- socket_type- request_queue_size (only for stream sockets)- allow_reuse_addressInstance variables:- server_address- RequestHandlerClass- socket""" address_family = socket.AF_INET socket_type = socket.SOCK_STREAM request_queue_size = 5 allow_reuse_address = False def __init__(self, server_address, RequestHandlerClass, bind_and_activate=True): """Constructor. May be extended, do not override.""" BaseServer.__init__(self, server_address, RequestHandlerClass) self.socket = socket.socket(self.address_family, self.socket_type) if bind_and_activate: try: self.server_bind() self.server_activate() except: self.server_close() raise def server_bind(self): """Called by constructor to bind the socket. May be overridden. """ if self.allow_reuse_address: self.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) self.socket.bind(self.server_address) self.server_address = self.socket.getsockname() def server_activate(self): """Called by constructor to activate the server. May be overridden. """ self.socket.listen(self.request_queue_size) def server_close(self): """Called to clean-up the server. May be overridden. """ self.socket.close() def fileno(self): """Return socket file number. Interface required by select(). """ return self.socket.fileno() def get_request(self): """Get the request and client address from the socket. May be overridden. """ return self.socket.accept() def shutdown_request(self, request): """Called to shutdown and close an individual request.""" try: #explicitly shutdown. socket.close() merely releases #the socket and waits for GC to perform the actual close. request.shutdown(socket.SHUT_WR) except socket.error: pass #some platforms may raise ENOTCONN here self.close_request(request) def close_request(self, request): """Called to clean up an individual request.""" request.close() TCPServer class ThreadingMixIn:"""Mix-in class to handle each request in a new thread."""# Decides how threads will act upon termination of the # main process daemon_threads = False def process_request_thread(self, request, client_address): """Same as in BaseServer but as a thread. In addition, exception handling is done here. """ try: self.finish_request(request, client_address) self.shutdown_request(request) except: self.handle_error(request, client_address) self.shutdown_request(request) def process_request(self, request, client_address): """Start a new thread to process the request.""" t = threading.Thread(target = self.process_request_thread, args = (request, client_address)) t.daemon = self.daemon_threads t.start() ThreadingMixIn class ThreadingTCPServer(ThreadingMixIn, TCPServer): pass ThreadingTCPServer

RequestHandler相關(guān)源碼

class BaseRequestHandler:"""Base class for request handler classes.This class is instantiated for each request to be handled. Theconstructor sets the instance variables request, client_addressand server, and then calls the handle() method. To implement aspecific service, all you need to do is to derive a class whichdefines a handle() method.The handle() method can find the request as self.request, theclient address as self.client_address, and the server (in case itneeds access to per-server information) as self.server. Since aseparate instance is created for each request, the handle() methodcan define arbitrary other instance variariables."""def __init__(self, request, client_address, server): self.request = request self.client_address = client_address self.server = server self.setup() try: self.handle() finally: self.finish() def setup(self): pass def handle(self): pass def finish(self): pass SocketServer.BaseRequestHandler

實例:

#!/usr/bin/env python # -*- coding:utf-8 -*- import SocketServer class MyServer(SocketServer.BaseRequestHandler): def handle(self): # print self.request,self.client_address,self.server conn = self.request conn.sendall('歡迎致電 10086,請輸入1xxx,0轉(zhuǎn)人工服務(wù).') Flag = True while Flag: data = conn.recv(1024) if data == 'exit': Flag = False elif data == '0': conn.sendall('通過可能會被錄音.balabala一大推') else: conn.sendall('請重新輸入.') if __name__ == '__main__': server = SocketServer.ThreadingTCPServer(('127.0.0.1',8009),MyServer) server.serve_forever() 服務(wù)端 #!/usr/bin/env python # -*- coding:utf-8 -*-import socket ip_port = ('127.0.0.1',8009) sk = socket.socket() sk.connect(ip_port) sk.settimeout(5) while True: data = sk.recv(1024) print 'receive:',data inp = raw_input('please input:') sk.sendall(inp) if inp == 'exit': break sk.close() 客戶端

源碼精簡:

import socket import threading import select def process(request, client_address): print request,client_address conn = request conn.sendall('歡迎致電 10086,請輸入1xxx,0轉(zhuǎn)人工服務(wù).') flag = True while flag: data = conn.recv(1024) if data == 'exit': flag = False elif data == '0': conn.sendall('通過可能會被錄音.balabala一大推') else: conn.sendall('請重新輸入.') sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sk.bind(('127.0.0.1',8002)) sk.listen(5) while True: r, w, e = select.select([sk,],[],[],1) print 'looping' if sk in r: print 'get request' request, client_address = sk.accept() t = threading.Thread(target=process, args=(request, client_address)) t.daemon = False t.start() sk.close()

如精簡代碼可以看出,SocketServer的ThreadingTCPServer之所以可以同時處理請求得益于 selectThreading 兩個東西,其實本質(zhì)上就是在服務(wù)器端為每一個客戶端創(chuàng)建一個線程,當(dāng)前線程用來處理對應(yīng)客戶端的請求,所以,可以支持同時n個客戶端鏈接(長連接)。

ForkingTCPServer

ForkingTCPServer和ThreadingTCPServer的使用和執(zhí)行流程基本一致,只不過在內(nèi)部分別為請求者建立 “線程” ?和 “進程”。

基本使用:

#!/usr/bin/env python # -*- coding:utf-8 -*- import SocketServer class MyServer(SocketServer.BaseRequestHandler): def handle(self): # print self.request,self.client_address,self.server conn = self.request conn.sendall('歡迎致電 10086,請輸入1xxx,0轉(zhuǎn)人工服務(wù).') Flag = True while Flag: data = conn.recv(1024) if data == 'exit': Flag = False elif data == '0': conn.sendall('通過可能會被錄音.balabala一大推') else: conn.sendall('請重新輸入.') if __name__ == '__main__': server = SocketServer.ForkingTCPServer(('127.0.0.1',8009),MyServer) server.serve_forever() 服務(wù)端 #!/usr/bin/env python # -*- coding:utf-8 -*-import socket ip_port = ('127.0.0.1',8009) sk = socket.socket() sk.connect(ip_port) sk.settimeout(5) while True: data = sk.recv(1024) print 'receive:',data inp = raw_input('please input:') sk.sendall(inp) if inp == 'exit': break sk.close() 客戶端

以上ForkingTCPServer只是將?ThreadingTCPServer 實例中的代碼:

?
1 2 3 server = SocketServer.ThreadingTCPServer(('127.0.0.1',8009),MyRequestHandler) 變更為: server = SocketServer.ForkingTCPServer(('127.0.0.1',8009),MyRequestHandler)

SocketServer的ThreadingTCPServer之所以可以同時處理請求得益于?select?和?os.fork?兩個東西,其實本質(zhì)上就是在服務(wù)器端為每一個客戶端創(chuàng)建一個進程,當(dāng)前新創(chuàng)建的進程用來處理對應(yīng)客戶端的請求,所以,可以支持同時n個客戶端鏈接(長連接)。

源碼剖析參考 ThreadingTCPServer

Twisted

Twisted是一個事件驅(qū)動的網(wǎng)絡(luò)框架,其中包含了諸多功能,例如:網(wǎng)絡(luò)協(xié)議、線程、數(shù)據(jù)庫管理、網(wǎng)絡(luò)操作、電子郵件等。

事件驅(qū)動

簡而言之,事件驅(qū)動分為二個部分:第一,注冊事件;第二,觸發(fā)事件。

自定義事件驅(qū)動框架,命名為:“弒君者”:

#!/usr/bin/env python # -*- coding:utf-8 -*-# event_drive.py event_list = [] def run(): for event in event_list: obj = event() obj.execute() class BaseHandler(object): """ 用戶必須繼承該類,從而規(guī)范所有類的方法(類似于接口的功能) """ def execute(self): raise Exception('you must overwrite execute') 最牛逼的事件驅(qū)動框架

程序員使用“弒君者框架”:

#!/usr/bin/env python # -*- coding:utf-8 -*-from source import event_drive class MyHandler(event_drive.BaseHandler): def execute(self): print 'event-drive execute MyHandler' event_drive.event_list.append(MyHandler) event_drive.run() View Code

如上述代碼,事件驅(qū)動只不過是框架規(guī)定了執(zhí)行順序,程序員在使用框架時,可以向原執(zhí)行順序中注冊“事件”,從而在框架執(zhí)行時可以出發(fā)已注冊的“事件”。

基于事件驅(qū)動Socket

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #!/usr/bin/env python # -*- coding:utf-8 -*- from twisted.internet import protocol from twisted.internet import reactor class Echo(protocol.Protocol): ????def dataReceived(self, data): ????????self.transport.write(data) def main(): ????factory = protocol.ServerFactory() ????factory.protocol = Echo ????reactor.listenTCP(8000,factory) ????reactor.run() if __name__ == '__main__': ????main()

程序執(zhí)行流程:

  • 運行服務(wù)端程序
  • 創(chuàng)建Protocol的派生類Echo
  • 創(chuàng)建ServerFactory對象,并將Echo類封裝到其protocol字段中
  • 執(zhí)行reactor的 listenTCP 方法,內(nèi)部使用?tcp.Port 創(chuàng)建socket server對象,并將該對象添加到了 reactor的set類型的字段 _read 中
  • 執(zhí)行reactor的 run 方法,內(nèi)部執(zhí)行 while 循環(huán),并通過 select 來監(jiān)視?_read 中文件描述符是否有變化,循環(huán)中...
  • 客戶端請求到達(dá)
  • 執(zhí)行reactor的?_doReadOrWrite 方法,其內(nèi)部通過反射調(diào)用 tcp.Port 類的?doRead 方法,內(nèi)部 accept 客戶端連接并創(chuàng)建Server對象實例(用于封裝客戶端socket信息)和?創(chuàng)建 Echo 對象實例(用于處理請求)?,然后調(diào)用 Echo 對象實例的?makeConnection 方法,創(chuàng)建連接。
  • 執(zhí)行 tcp.Server 類的?doRead 方法,讀取數(shù)據(jù),
  • 執(zhí)行 tcp.Server 類的?_dataReceived 方法,如果讀取數(shù)據(jù)內(nèi)容為空(關(guān)閉鏈接),否則,出發(fā) Echo 的?dataReceived 方法
  • 執(zhí)行?Echo 的?dataReceived 方法

從源碼可以看出,上述實例本質(zhì)上使用了事件驅(qū)動的方法 和 IO多路復(fù)用的機制來進行Socket的處理。

#!/usr/bin/env python # -*- coding:utf-8 -*-from twisted.internet import reactor, protocol from twisted.web.client import getPage from twisted.internet import reactor import time class Echo(protocol.Protocol): def dataReceived(self, data): deferred1 = getPage('http://cnblogs.com') deferred1.addCallback(self.printContents) deferred2 = getPage('http://baidu.com') deferred2.addCallback(self.printContents) for i in range(2): time.sleep(1) print 'execute ',i def execute(self,data): self.transport.write(data) def printContents(self,content): print len(content),content[0:100],time.time() def main(): factory = protocol.ServerFactory() factory.protocol = Echo reactor.listenTCP(8000,factory) reactor.run() if __name__ == '__main__': main() 異步IO操作

更多請見:

  https://twistedmatrix.com/trac   http://twistedmatrix.com/documents/current/api/

轉(zhuǎn)載于:https://www.cnblogs.com/cp-miao/p/5658507.html

總結(jié)

以上是生活随笔為你收集整理的Python开发【第八篇】:网络编程 Socket的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

久久久久成人精品免费播放动漫 | 在线 国产 欧美 亚洲 天堂 | 免费视频欧美无人区码 | 波多野结衣av一区二区全免费观看 | 天天综合网天天综合色 | 午夜熟女插插xx免费视频 | 大屁股大乳丰满人妻 | 欧美喷潮久久久xxxxx | 欧美放荡的少妇 | 性色av无码免费一区二区三区 | 国内揄拍国内精品少妇国语 | 人妻与老人中文字幕 | 中文字幕乱码人妻无码久久 | 国产 精品 自在自线 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 久久综合激激的五月天 | 欧美丰满少妇xxxx性 | 少妇人妻偷人精品无码视频 | 亚洲成a人片在线观看日本 | 日韩人妻无码中文字幕视频 | 亚洲成色www久久网站 | 国产精品久久精品三级 | 精品无码成人片一区二区98 | 国产精品多人p群无码 | 国产精品理论片在线观看 | 在线观看免费人成视频 | 两性色午夜免费视频 | 亚洲国产精品美女久久久久 | 呦交小u女精品视频 | 中文字幕av无码一区二区三区电影 | 九月婷婷人人澡人人添人人爽 | 亚洲色偷偷偷综合网 | 亚洲va欧美va天堂v国产综合 | 亚洲国产精品久久久久久 | 岛国片人妻三上悠亚 | 人妻中文无码久热丝袜 | 乱中年女人伦av三区 | 2020最新国产自产精品 | 麻豆国产人妻欲求不满谁演的 | 国产av一区二区精品久久凹凸 | 精品夜夜澡人妻无码av蜜桃 | 2020久久香蕉国产线看观看 | 国产sm调教视频在线观看 | 无码吃奶揉捏奶头高潮视频 | 国色天香社区在线视频 | 无码av岛国片在线播放 | 亚洲天堂2017无码 | av在线亚洲欧洲日产一区二区 | 国产又粗又硬又大爽黄老大爷视 | 亚洲 高清 成人 动漫 | 激情五月综合色婷婷一区二区 | 成人无码精品一区二区三区 | 国产无遮挡吃胸膜奶免费看 | 亚洲精品中文字幕乱码 | 日本高清一区免费中文视频 | 日本一本二本三区免费 | 成人av无码一区二区三区 | 日韩人妻无码中文字幕视频 | 丁香花在线影院观看在线播放 | 国产国产精品人在线视 | 中文字幕人妻丝袜二区 | 免费播放一区二区三区 | 夜夜影院未满十八勿进 | 波多野结衣av在线观看 | 欧美猛少妇色xxxxx | 亚洲综合另类小说色区 | 老熟妇仑乱视频一区二区 | 亚洲人成影院在线观看 | 无码人妻丰满熟妇区五十路百度 | 久久久久国色av免费观看性色 | 精品一区二区不卡无码av | 啦啦啦www在线观看免费视频 | 婷婷丁香五月天综合东京热 | 国产亚洲欧美在线专区 | 欧美freesex黑人又粗又大 | 国语精品一区二区三区 | 欧美zoozzooz性欧美 | 欧美喷潮久久久xxxxx | 国产97人人超碰caoprom | 国产欧美熟妇另类久久久 | 国产成人综合在线女婷五月99播放 | 亚洲综合在线一区二区三区 | 亚洲春色在线视频 | 国产成人一区二区三区在线观看 | 青青青爽视频在线观看 | 大屁股大乳丰满人妻 | 超碰97人人射妻 | 欧美自拍另类欧美综合图片区 | 日本精品久久久久中文字幕 | 久久综合久久自在自线精品自 | 88国产精品欧美一区二区三区 | 国产亚洲美女精品久久久2020 | 亚洲午夜福利在线观看 | 久久午夜夜伦鲁鲁片无码免费 | 国产在线精品一区二区高清不卡 | 中文字幕无码视频专区 | 午夜丰满少妇性开放视频 | 国产精品第一区揄拍无码 | 中文字幕av伊人av无码av | 亚洲啪av永久无码精品放毛片 | 亚洲精品国产精品乱码视色 | 国产成人精品优优av | 国产欧美精品一区二区三区 | 国产一区二区三区影院 | 2019午夜福利不卡片在线 | 亚洲精品一区三区三区在线观看 | 久久久久av无码免费网 | 国产欧美亚洲精品a | 国产亚洲tv在线观看 | 亚洲成a人片在线观看日本 | 国产一区二区三区影院 | 99久久久国产精品无码免费 | 久久久国产一区二区三区 | 国产成人无码午夜视频在线观看 | 亚洲aⅴ无码成人网站国产app | 又大又黄又粗又爽的免费视频 | 国产精品a成v人在线播放 | 婷婷丁香五月天综合东京热 | 嫩b人妻精品一区二区三区 | 亚洲精品国产精品乱码视色 | 亚洲成av人片天堂网无码】 | 国产一区二区三区精品视频 | 午夜精品一区二区三区在线观看 | 理论片87福利理论电影 | 国产午夜福利100集发布 | 国产人妻精品午夜福利免费 | 成人一在线视频日韩国产 | 无码人中文字幕 | 久久成人a毛片免费观看网站 | 中文毛片无遮挡高清免费 | 国产 精品 自在自线 | 在线а√天堂中文官网 | 人妻与老人中文字幕 | 久久久久久久人妻无码中文字幕爆 | 在线精品国产一区二区三区 | 欧美日本精品一区二区三区 | 一本无码人妻在中文字幕免费 | 亚洲精品一区二区三区婷婷月 | 色偷偷av老熟女 久久精品人妻少妇一区二区三区 | 久久久精品456亚洲影院 | 亚洲精品国偷拍自产在线麻豆 | 美女扒开屁股让男人桶 | 人妻无码αv中文字幕久久琪琪布 | yw尤物av无码国产在线观看 | 亚洲精品中文字幕乱码 | 欧美日韩综合一区二区三区 | 亚洲第一无码av无码专区 | 秋霞成人午夜鲁丝一区二区三区 | 东北女人啪啪对白 | 日本一区二区三区免费高清 | 国产在线精品一区二区高清不卡 | 国产手机在线αⅴ片无码观看 | 中文字幕无码视频专区 | 99精品无人区乱码1区2区3区 | 国产特级毛片aaaaaaa高清 | 精品国产国产综合精品 | 国产精品久久国产三级国 | 人人爽人人澡人人高潮 | 综合网日日天干夜夜久久 | 亚洲精品中文字幕 | 无码吃奶揉捏奶头高潮视频 | 狂野欧美性猛xxxx乱大交 | 国产乱子伦视频在线播放 | 欧美人与善在线com | 国产在线一区二区三区四区五区 | 精品夜夜澡人妻无码av蜜桃 | 亚洲精品午夜无码电影网 | 日本xxxx色视频在线观看免费 | 欧美亚洲日韩国产人成在线播放 | 国产在线aaa片一区二区99 | 亚洲精品久久久久avwww潮水 | 国产成人av免费观看 | 成人性做爰aaa片免费看不忠 | 51国偷自产一区二区三区 | 黑人巨大精品欧美黑寡妇 | 国产精品无码一区二区桃花视频 | 无人区乱码一区二区三区 | 内射爽无广熟女亚洲 | 人妻少妇精品无码专区动漫 | 日韩无码专区 | 国产亚洲美女精品久久久2020 | 久久久中文字幕日本无吗 | 爱做久久久久久 | 国产成人人人97超碰超爽8 | 欧美日韩色另类综合 | 精品久久久久久亚洲精品 | 国产超碰人人爽人人做人人添 | 成熟妇人a片免费看网站 | 国产亚洲精品久久久久久国模美 | 300部国产真实乱 | 免费中文字幕日韩欧美 | 亚洲日韩av一区二区三区四区 | 曰韩无码二三区中文字幕 | 老子影院午夜伦不卡 | 欧美日韩在线亚洲综合国产人 | 狠狠色噜噜狠狠狠7777奇米 | 特大黑人娇小亚洲女 | 亚洲成av人片在线观看无码不卡 | 蜜桃av抽搐高潮一区二区 | 久久99久久99精品中文字幕 | 国产熟妇高潮叫床视频播放 | 99久久精品日本一区二区免费 | 国产真人无遮挡作爱免费视频 | 麻豆蜜桃av蜜臀av色欲av | 成熟妇人a片免费看网站 | 麻豆蜜桃av蜜臀av色欲av | 精品国产一区二区三区四区在线看 | 久久精品国产99精品亚洲 | 欧美刺激性大交 | 亚洲中文字幕乱码av波多ji | 中文无码成人免费视频在线观看 | 国产激情艳情在线看视频 | 一本色道久久综合亚洲精品不卡 | 四虎国产精品免费久久 | 欧美35页视频在线观看 | 久久熟妇人妻午夜寂寞影院 | 国产午夜福利100集发布 | 久久久久人妻一区精品色欧美 | 风流少妇按摩来高潮 | 久久久久成人片免费观看蜜芽 | 丰满少妇熟乱xxxxx视频 | 成人三级无码视频在线观看 | 久久久久久亚洲精品a片成人 | 少妇性荡欲午夜性开放视频剧场 | 亚洲色偷偷偷综合网 | 久久久久久久久888 | 永久免费观看美女裸体的网站 | 精品人妻人人做人人爽 | 1000部啪啪未满十八勿入下载 | 丰满人妻一区二区三区免费视频 | 精品国产一区二区三区av 性色 | 国产激情一区二区三区 | 欧美人与善在线com | 久久久久免费精品国产 | 亚洲欧美综合区丁香五月小说 | a在线观看免费网站大全 | 夜夜影院未满十八勿进 | 欧美熟妇另类久久久久久多毛 | 特黄特色大片免费播放器图片 | 丰满少妇人妻久久久久久 | 午夜肉伦伦影院 | 成人影院yy111111在线观看 | 日韩视频 中文字幕 视频一区 | 欧美 亚洲 国产 另类 | 亚洲中文字幕va福利 | 欧美性黑人极品hd | 国产成人一区二区三区别 | 日本一区二区三区免费播放 | 国产亚洲精品久久久久久大师 | 曰韩少妇内射免费播放 | 国产精品无码mv在线观看 | 精品水蜜桃久久久久久久 | 精品国产国产综合精品 | 99国产欧美久久久精品 | 国产精品理论片在线观看 | 午夜福利一区二区三区在线观看 | 婷婷五月综合激情中文字幕 | 成人aaa片一区国产精品 | av无码不卡在线观看免费 | 99久久人妻精品免费一区 | 天堂久久天堂av色综合 | 欧美亚洲国产一区二区三区 | 欧美丰满老熟妇xxxxx性 | 思思久久99热只有频精品66 | 久久五月精品中文字幕 | 国产亚洲精品久久久久久久久动漫 | 又黄又爽又色的视频 | 西西人体www44rt大胆高清 | 亚洲人成网站在线播放942 | 亚洲精品久久久久久久久久久 | 免费无码肉片在线观看 | 青青青手机频在线观看 | 中文字幕日产无线码一区 | 成人无码精品一区二区三区 | 亚拍精品一区二区三区探花 | 亚洲国产欧美日韩精品一区二区三区 | 久久国语露脸国产精品电影 | 午夜性刺激在线视频免费 | 亚洲色欲色欲天天天www | 国产成人无码av在线影院 | 俺去俺来也在线www色官网 | 在线观看国产午夜福利片 | 日韩av无码一区二区三区 | 一本久久伊人热热精品中文字幕 | www国产精品内射老师 | 98国产精品综合一区二区三区 | 人人妻人人澡人人爽精品欧美 | 国产精品久久久久影院嫩草 | 国产亚洲精品精品国产亚洲综合 | 国产女主播喷水视频在线观看 | 夜夜夜高潮夜夜爽夜夜爰爰 | 欧美黑人性暴力猛交喷水 | 一本加勒比波多野结衣 | 亚洲色成人中文字幕网站 | 欧美国产日韩久久mv | 久久久久99精品成人片 | 国产成人精品必看 | 无码av岛国片在线播放 | 在线 国产 欧美 亚洲 天堂 | 久9re热视频这里只有精品 | 精品无码一区二区三区爱欲 | 欧美性生交xxxxx久久久 | 97久久国产亚洲精品超碰热 | 夜精品a片一区二区三区无码白浆 | 国产97色在线 | 免 | 麻豆国产97在线 | 欧洲 | 亚洲 激情 小说 另类 欧美 | 宝宝好涨水快流出来免费视频 | 午夜肉伦伦影院 | 国产精品自产拍在线观看 | 欧美xxxxx精品 | 欧美黑人巨大xxxxx | 99视频精品全部免费免费观看 | 午夜精品久久久久久久 | 国内精品久久毛片一区二区 | 日韩少妇白浆无码系列 | 国内综合精品午夜久久资源 | 男女超爽视频免费播放 | 日本乱人伦片中文三区 | 国产精品对白交换视频 | 国产高清av在线播放 | 国产成人综合在线女婷五月99播放 | 亚洲色在线无码国产精品不卡 | 黑人巨大精品欧美一区二区 | 久久zyz资源站无码中文动漫 | 纯爱无遮挡h肉动漫在线播放 | 午夜免费福利小电影 | 亚洲日韩av一区二区三区中文 | 曰本女人与公拘交酡免费视频 | 人人妻人人藻人人爽欧美一区 | 无码av岛国片在线播放 | 久久精品人妻少妇一区二区三区 | 午夜精品一区二区三区在线观看 | 国产激情无码一区二区app | 小sao货水好多真紧h无码视频 | 国产成人无码午夜视频在线观看 | 狂野欧美性猛交免费视频 | 国产情侣作爱视频免费观看 | 少妇的肉体aa片免费 | 少妇邻居内射在线 | 欧洲熟妇精品视频 | 风流少妇按摩来高潮 | 欧美阿v高清资源不卡在线播放 | 日韩精品无码免费一区二区三区 | 蜜桃臀无码内射一区二区三区 | 久久国产精品偷任你爽任你 | 东京热一精品无码av | 亚洲春色在线视频 | 丰满人妻一区二区三区免费视频 | 四虎国产精品免费久久 | 乱人伦人妻中文字幕无码 | 亚洲欧美国产精品专区久久 | 在线看片无码永久免费视频 | 国产亲子乱弄免费视频 | 久久精品人人做人人综合试看 | 窝窝午夜理论片影院 | 亚洲中文字幕av在天堂 | 精品久久久无码中文字幕 | 亚洲欧美日韩国产精品一区二区 | 老头边吃奶边弄进去呻吟 | 色欲人妻aaaaaaa无码 | 蜜桃av蜜臀av色欲av麻 999久久久国产精品消防器材 | 亚洲中文字幕无码中字 | 日本爽爽爽爽爽爽在线观看免 | 色诱久久久久综合网ywww | 啦啦啦www在线观看免费视频 | 日本熟妇人妻xxxxx人hd | 亚洲精品成a人在线观看 | 亚洲s色大片在线观看 | 免费无码av一区二区 | 香蕉久久久久久av成人 | 欧美高清在线精品一区 | 久久久久成人片免费观看蜜芽 | 精品欧美一区二区三区久久久 | 夫妻免费无码v看片 | 精品无码一区二区三区的天堂 | 无码人妻黑人中文字幕 | 一本久久a久久精品vr综合 | 久久人人爽人人爽人人片av高清 | 久久综合狠狠综合久久综合88 | 亚洲中文字幕无码一久久区 | 曰本女人与公拘交酡免费视频 | 日本一区二区三区免费高清 | 国产成人av免费观看 | 国产日产欧产精品精品app | 一本久道久久综合狠狠爱 | 奇米影视7777久久精品 | 少妇激情av一区二区 | 精品久久久无码人妻字幂 | 性欧美疯狂xxxxbbbb | 偷窥村妇洗澡毛毛多 | 色欲久久久天天天综合网精品 | 六十路熟妇乱子伦 | 久久99精品国产麻豆蜜芽 | 亚洲精品久久久久中文第一幕 | 丰满肥臀大屁股熟妇激情视频 | 大肉大捧一进一出视频出来呀 | 精品 日韩 国产 欧美 视频 | 捆绑白丝粉色jk震动捧喷白浆 | 兔费看少妇性l交大片免费 | 日本熟妇人妻xxxxx人hd | 成人一在线视频日韩国产 | 亚洲精品中文字幕 | 丰满岳乱妇在线观看中字无码 | 人人妻人人澡人人爽人人精品 | 丰满护士巨好爽好大乳 | 亚洲精品综合一区二区三区在线 | 骚片av蜜桃精品一区 | 亚洲综合色区中文字幕 | 婷婷丁香五月天综合东京热 | 国产人妻精品一区二区三区 | 一本久道久久综合婷婷五月 | 国产成人精品无码播放 | 国产真实乱对白精彩久久 | 好男人www社区 | 久久综合香蕉国产蜜臀av | 久久精品国产一区二区三区肥胖 | 国产精华av午夜在线观看 | 西西人体www44rt大胆高清 | 精品aⅴ一区二区三区 | 日本精品人妻无码77777 天堂一区人妻无码 | 熟妇人妻无乱码中文字幕 | 好爽又高潮了毛片免费下载 | 精品无码国产自产拍在线观看蜜 | 免费中文字幕日韩欧美 | 麻豆国产丝袜白领秘书在线观看 | 丰满少妇熟乱xxxxx视频 | 天天躁夜夜躁狠狠是什么心态 | 99久久精品国产一区二区蜜芽 | 国产凸凹视频一区二区 | 婷婷六月久久综合丁香 | 国产在线精品一区二区高清不卡 | 一本久久伊人热热精品中文字幕 | 国产极品美女高潮无套在线观看 | 激情综合激情五月俺也去 | 日本免费一区二区三区最新 | 99riav国产精品视频 | 久久综合久久自在自线精品自 | 欧美三级a做爰在线观看 | 国产一区二区三区日韩精品 | 荫蒂添的好舒服视频囗交 | 国产成人无码午夜视频在线观看 | 大肉大捧一进一出视频出来呀 | 久久人人爽人人爽人人片av高清 | 久久99精品国产麻豆蜜芽 | 亚洲国产成人a精品不卡在线 | 国产艳妇av在线观看果冻传媒 | 久久国产精品二国产精品 | 麻豆精品国产精华精华液好用吗 | 精品久久久无码中文字幕 | 亚洲a无码综合a国产av中文 | 图片小说视频一区二区 | 日本va欧美va欧美va精品 | 国产va免费精品观看 | 国产乱人无码伦av在线a | 99久久亚洲精品无码毛片 | 精品欧美一区二区三区久久久 | 国产国语老龄妇女a片 | 中文字幕日韩精品一区二区三区 | 精品久久久中文字幕人妻 | 无码帝国www无码专区色综合 | 2020最新国产自产精品 | 国产乱人偷精品人妻a片 | 最近免费中文字幕中文高清百度 | 国产在线aaa片一区二区99 | 国产成人无码一二三区视频 | 天天爽夜夜爽夜夜爽 | 色欲综合久久中文字幕网 | 麻豆人妻少妇精品无码专区 | 波多野结衣av在线观看 | 成人片黄网站色大片免费观看 | 午夜福利电影 | 黄网在线观看免费网站 | 东北女人啪啪对白 | 免费无码的av片在线观看 | 免费国产黄网站在线观看 | 国内少妇偷人精品视频免费 | 国内丰满熟女出轨videos | a在线亚洲男人的天堂 | 欧美 丝袜 自拍 制服 另类 | 日日碰狠狠躁久久躁蜜桃 | 日本xxxx色视频在线观看免费 | 亚洲男人av天堂午夜在 | 久久综合色之久久综合 | 99久久精品国产一区二区蜜芽 | 亚洲毛片av日韩av无码 | 女人被爽到呻吟gif动态图视看 | 欧美老人巨大xxxx做受 | 日本免费一区二区三区最新 | 成年女人永久免费看片 | 人妻夜夜爽天天爽三区 | 特大黑人娇小亚洲女 | 亚洲精品综合一区二区三区在线 | 亚洲国产精品一区二区美利坚 | 亚拍精品一区二区三区探花 | 久久久久免费精品国产 | 亚洲中文字幕成人无码 | 国产在线一区二区三区四区五区 | 四虎永久在线精品免费网址 | 女人被爽到呻吟gif动态图视看 | 婷婷丁香五月天综合东京热 | 人人超人人超碰超国产 | 漂亮人妻洗澡被公强 日日躁 | 精品无人区无码乱码毛片国产 | av无码不卡在线观看免费 | 狂野欧美性猛xxxx乱大交 | 一本加勒比波多野结衣 | 亚洲精品成人福利网站 | 精品国产一区二区三区四区 | 久久久久成人片免费观看蜜芽 | 99视频精品全部免费免费观看 | 无码一区二区三区在线观看 | 成人精品视频一区二区三区尤物 | 国产97人人超碰caoprom | 中文字幕av伊人av无码av | 乱人伦中文视频在线观看 | 人人妻人人藻人人爽欧美一区 | 天堂无码人妻精品一区二区三区 | √天堂资源地址中文在线 | av无码电影一区二区三区 | 麻豆国产人妻欲求不满 | 久久婷婷五月综合色国产香蕉 | 国产精品美女久久久久av爽李琼 | 一个人免费观看的www视频 | 日日橹狠狠爱欧美视频 | 激情内射亚州一区二区三区爱妻 | 亚洲大尺度无码无码专区 | 免费国产成人高清在线观看网站 | 黑人玩弄人妻中文在线 | 亚洲国产精品无码一区二区三区 | 国产成人综合色在线观看网站 | 天堂亚洲2017在线观看 | 亚洲一区二区三区在线观看网站 | 伊在人天堂亚洲香蕉精品区 | 欧美老妇交乱视频在线观看 | 亚洲国产精品成人久久蜜臀 | 乱人伦人妻中文字幕无码久久网 | 撕开奶罩揉吮奶头视频 | 亚洲日韩av片在线观看 | 人妻有码中文字幕在线 | 未满小14洗澡无码视频网站 | 无码帝国www无码专区色综合 | 日本爽爽爽爽爽爽在线观看免 | 亚洲色无码一区二区三区 | 日本免费一区二区三区最新 | 国产精品久久久久9999小说 | 国产精品第一国产精品 | 人妻与老人中文字幕 | 高清不卡一区二区三区 | 亚洲色欲色欲天天天www | 亚洲综合另类小说色区 | 国内丰满熟女出轨videos | 中文无码精品a∨在线观看不卡 | 亚洲中文字幕成人无码 | 亚洲欧美国产精品专区久久 | 一区二区三区高清视频一 | 永久免费精品精品永久-夜色 | 女高中生第一次破苞av | 中文字幕精品av一区二区五区 | 日本熟妇人妻xxxxx人hd | 国产又粗又硬又大爽黄老大爷视 | 夜夜躁日日躁狠狠久久av | 国产婷婷色一区二区三区在线 | 国产精品人人爽人人做我的可爱 | 极品尤物被啪到呻吟喷水 | 婷婷丁香六月激情综合啪 | 免费播放一区二区三区 | 青草青草久热国产精品 | 国产特级毛片aaaaaaa高清 | 亚洲自偷自偷在线制服 | 欧美野外疯狂做受xxxx高潮 | 国产av一区二区精品久久凹凸 | 成熟女人特级毛片www免费 | 国产精品沙发午睡系列 | 人妻aⅴ无码一区二区三区 | 亚洲综合无码久久精品综合 | 99久久精品日本一区二区免费 | 又色又爽又黄的美女裸体网站 | 亚洲中文字幕在线无码一区二区 | 国产精品99爱免费视频 | 亚洲中文字幕成人无码 | 久久亚洲a片com人成 | 欧美国产日韩久久mv | 欧美成人免费全部网站 | 亚洲毛片av日韩av无码 | 风流少妇按摩来高潮 | 亚洲无人区一区二区三区 | 野外少妇愉情中文字幕 | 欧美成人高清在线播放 | 在线播放亚洲第一字幕 | 色情久久久av熟女人妻网站 | 99久久99久久免费精品蜜桃 | 色狠狠av一区二区三区 | 亚洲成a人片在线观看无码 | 国产人妻精品一区二区三区 | 香港三级日本三级妇三级 | 乱人伦人妻中文字幕无码久久网 | 国产午夜视频在线观看 | 久久综合九色综合欧美狠狠 | 理论片87福利理论电影 | 国产艳妇av在线观看果冻传媒 | 亚洲啪av永久无码精品放毛片 | 久久精品国产99精品亚洲 | 一本久道久久综合婷婷五月 | 特级做a爰片毛片免费69 | 六月丁香婷婷色狠狠久久 | 国产在线一区二区三区四区五区 | 亚洲中文字幕av在天堂 | 对白脏话肉麻粗话av | 国语精品一区二区三区 | 国产精品永久免费视频 | 高潮毛片无遮挡高清免费视频 | 成人一在线视频日韩国产 | 欧美国产亚洲日韩在线二区 | 97久久精品无码一区二区 | 双乳奶水饱满少妇呻吟 | 真人与拘做受免费视频一 | 国产人妻久久精品二区三区老狼 | √8天堂资源地址中文在线 | 亚洲乱码中文字幕在线 | 国产一区二区三区精品视频 | www成人国产高清内射 | 日韩人妻无码中文字幕视频 | 日韩精品一区二区av在线 | 精品国产青草久久久久福利 | 欧美 丝袜 自拍 制服 另类 | 亚欧洲精品在线视频免费观看 | 国产亚洲精品久久久久久久 | 久久亚洲中文字幕无码 | 激情国产av做激情国产爱 | 中文字幕人妻无码一夲道 | 综合人妻久久一区二区精品 | 午夜成人1000部免费视频 | 无码帝国www无码专区色综合 | 成人精品一区二区三区中文字幕 | 高清国产亚洲精品自在久久 | 成人亚洲精品久久久久软件 | 国产麻豆精品精东影业av网站 | 亚洲欧洲中文日韩av乱码 | 日韩精品无码一本二本三本色 | 中文久久乱码一区二区 | 国产午夜无码精品免费看 | 国产97人人超碰caoprom | 久久午夜无码鲁丝片午夜精品 | 扒开双腿吃奶呻吟做受视频 | 久久久亚洲欧洲日产国码αv | 性史性农村dvd毛片 | 亚洲区小说区激情区图片区 | 亚洲国产欧美国产综合一区 | 亚洲国产日韩a在线播放 | 亚洲精品中文字幕乱码 | 国产亚洲日韩欧美另类第八页 | 中文字幕人妻无码一区二区三区 | 67194成是人免费无码 | 国产成人综合色在线观看网站 | 99久久精品日本一区二区免费 | 超碰97人人射妻 | 午夜福利试看120秒体验区 | 亚洲人交乣女bbw | 日本护士毛茸茸高潮 | 欧美人与善在线com | 青青青手机频在线观看 | 色情久久久av熟女人妻网站 | 亚洲欧美日韩成人高清在线一区 | 无码人妻久久一区二区三区不卡 | 1000部啪啪未满十八勿入下载 | 亚洲欧洲日本无在线码 | 大乳丰满人妻中文字幕日本 | 丰满人妻被黑人猛烈进入 | 亚洲欧洲无卡二区视頻 | 久久人人爽人人爽人人片av高清 | 午夜福利不卡在线视频 | 中文字幕无码免费久久9一区9 | 国精产品一品二品国精品69xx | 亚洲成av人影院在线观看 | 正在播放东北夫妻内射 | 扒开双腿吃奶呻吟做受视频 | 在教室伦流澡到高潮hnp视频 | 欧美乱妇无乱码大黄a片 | 中文字幕日产无线码一区 | 精品无码av一区二区三区 | 一区二区三区乱码在线 | 欧洲 | 日韩少妇内射免费播放 | aⅴ在线视频男人的天堂 | 人人爽人人爽人人片av亚洲 | 一二三四在线观看免费视频 | 黑人巨大精品欧美黑寡妇 | 狠狠噜狠狠狠狠丁香五月 | 精品偷拍一区二区三区在线看 | 熟女俱乐部五十路六十路av | av无码久久久久不卡免费网站 | 精品久久综合1区2区3区激情 | 久久久久亚洲精品中文字幕 | www国产精品内射老师 | 欧美日韩一区二区综合 | 日日鲁鲁鲁夜夜爽爽狠狠 | 牲欲强的熟妇农村老妇女 | 国产精品对白交换视频 | 又紧又大又爽精品一区二区 | 男女爱爱好爽视频免费看 | 亚洲精品无码国产 | 波多野结衣一区二区三区av免费 | 2019午夜福利不卡片在线 | 一本无码人妻在中文字幕免费 | 最新版天堂资源中文官网 | 国产成人精品一区二区在线小狼 | 国内精品久久久久久中文字幕 | 免费看少妇作爱视频 | 中文字幕无码免费久久9一区9 | 老司机亚洲精品影院 | 欧美三级不卡在线观看 | 亚洲日韩精品欧美一区二区 | 精品亚洲成av人在线观看 | 在教室伦流澡到高潮hnp视频 | 国产亚洲人成a在线v网站 | 亚洲精品一区二区三区在线观看 | 久久zyz资源站无码中文动漫 | 亚洲爆乳大丰满无码专区 | 夜夜影院未满十八勿进 | 亚洲日韩精品欧美一区二区 | 扒开双腿吃奶呻吟做受视频 | 人人妻人人藻人人爽欧美一区 | 国产明星裸体无码xxxx视频 | 午夜不卡av免费 一本久久a久久精品vr综合 | av无码不卡在线观看免费 | 麻豆蜜桃av蜜臀av色欲av | 波多野结衣一区二区三区av免费 | 欧美黑人性暴力猛交喷水 | 中文字幕av日韩精品一区二区 | 在线看片无码永久免费视频 | 中文字幕人妻丝袜二区 | 亚洲国产精品久久久天堂 | 久久久久成人精品免费播放动漫 | 黑人玩弄人妻中文在线 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 国产无遮挡又黄又爽又色 | 人妻中文无码久热丝袜 | 国产三级久久久精品麻豆三级 | 澳门永久av免费网站 | 狠狠色噜噜狠狠狠狠7777米奇 | 日韩少妇内射免费播放 | 久久 国产 尿 小便 嘘嘘 | 波多野结衣一区二区三区av免费 | 乱码午夜-极国产极内射 | 婷婷综合久久中文字幕蜜桃三电影 | 全球成人中文在线 | 精品少妇爆乳无码av无码专区 | 人妻有码中文字幕在线 | 东京热一精品无码av | 97色伦图片97综合影院 | 自拍偷自拍亚洲精品被多人伦好爽 | 两性色午夜视频免费播放 | 国产香蕉尹人视频在线 | 欧美成人高清在线播放 | 99久久精品午夜一区二区 | 亚洲爆乳无码专区 | 西西人体www44rt大胆高清 | 国产av一区二区精品久久凹凸 | 亚洲国产精品美女久久久久 | 撕开奶罩揉吮奶头视频 | 欧美日韩综合一区二区三区 | 强辱丰满人妻hd中文字幕 | 永久免费观看美女裸体的网站 | 亚洲の无码国产の无码影院 | 波多野结衣av一区二区全免费观看 | 亚洲国产精品久久久天堂 | 中国大陆精品视频xxxx | av无码电影一区二区三区 | 无码人妻少妇伦在线电影 | 久久久久成人片免费观看蜜芽 | 久久久中文字幕日本无吗 | 久久熟妇人妻午夜寂寞影院 | 国产精品18久久久久久麻辣 | 国模大胆一区二区三区 | 国产人妻精品一区二区三区 | 成人精品视频一区二区 | 久久久婷婷五月亚洲97号色 | 鲁鲁鲁爽爽爽在线视频观看 | 一个人免费观看的www视频 | 久久精品国产精品国产精品污 | 亚洲人亚洲人成电影网站色 | 久久久国产一区二区三区 | 国产莉萝无码av在线播放 | 免费男性肉肉影院 | 少妇性l交大片欧洲热妇乱xxx | 色狠狠av一区二区三区 | 国产熟妇高潮叫床视频播放 | 精品亚洲成av人在线观看 | 欧美三级a做爰在线观看 | 国产精品办公室沙发 | 天天摸天天碰天天添 | 成人无码视频在线观看网站 | av小次郎收藏 | 1000部夫妻午夜免费 | 性欧美videos高清精品 | 亚洲经典千人经典日产 | 久久久久免费看成人影片 | 国产亚洲精品久久久久久国模美 | аⅴ资源天堂资源库在线 | 亚洲精品欧美二区三区中文字幕 | 人妻人人添人妻人人爱 | 装睡被陌生人摸出水好爽 | av人摸人人人澡人人超碰下载 | 午夜精品久久久久久久久 | 亚洲国产av精品一区二区蜜芽 | 国产乱人伦av在线无码 | 亲嘴扒胸摸屁股激烈网站 | 无码乱肉视频免费大全合集 | 亚洲日韩中文字幕在线播放 | 丝袜 中出 制服 人妻 美腿 | 乌克兰少妇性做爰 | 久久久精品欧美一区二区免费 | 国产精品久久久久久亚洲影视内衣 | 国产精品办公室沙发 | 日日干夜夜干 | 黑森林福利视频导航 | 精品亚洲成av人在线观看 | 国产精品人妻一区二区三区四 | 国产乡下妇女做爰 | 免费人成在线视频无码 | 中文字幕乱码人妻二区三区 | 未满小14洗澡无码视频网站 | 中文字幕久久久久人妻 | 成熟妇人a片免费看网站 | 久久久久国色av免费观看性色 | 日韩亚洲欧美中文高清在线 | 日韩精品乱码av一区二区 | 丰满人妻被黑人猛烈进入 | 国产人妻大战黑人第1集 | 丝袜人妻一区二区三区 | 帮老师解开蕾丝奶罩吸乳网站 | 欧美成人家庭影院 | 伊人久久大香线蕉亚洲 | 国产成人无码a区在线观看视频app | 精品成人av一区二区三区 | 亚洲最大成人网站 | 熟妇人妻中文av无码 | 日日鲁鲁鲁夜夜爽爽狠狠 | 男女猛烈xx00免费视频试看 | 中文字幕日韩精品一区二区三区 | 图片小说视频一区二区 | 婷婷五月综合激情中文字幕 | 亚洲国产精华液网站w | 性史性农村dvd毛片 | 亚洲狠狠色丁香婷婷综合 | 亚洲 a v无 码免 费 成 人 a v | 欧美成人高清在线播放 | 亚洲国产欧美国产综合一区 | 久久国产精品精品国产色婷婷 | a片免费视频在线观看 | 欧美老妇交乱视频在线观看 | 精品人妻中文字幕有码在线 | 国产人妻久久精品二区三区老狼 | 欧美性猛交内射兽交老熟妇 | 日韩人妻无码一区二区三区久久99 | 国产精品久久久久影院嫩草 | 亚洲 高清 成人 动漫 | 欧美亚洲国产一区二区三区 | 国产真实乱对白精彩久久 | 亚洲日韩av一区二区三区中文 | 午夜无码人妻av大片色欲 | 成人欧美一区二区三区黑人免费 | 丝袜人妻一区二区三区 | 久久伊人色av天堂九九小黄鸭 | 精品国产aⅴ无码一区二区 | 午夜福利一区二区三区在线观看 | 亚洲欧美综合区丁香五月小说 | 少妇人妻av毛片在线看 | 亚洲日韩av片在线观看 | 精品久久久无码人妻字幂 | 国产午夜福利100集发布 | 成人综合网亚洲伊人 | 天天爽夜夜爽夜夜爽 | 人妻体内射精一区二区三四 | 中文字幕日韩精品一区二区三区 | 免费中文字幕日韩欧美 | 兔费看少妇性l交大片免费 | 欧美自拍另类欧美综合图片区 | 国产精品亚洲а∨无码播放麻豆 | 亚洲精品中文字幕乱码 | 国产一区二区三区影院 | 亚洲七七久久桃花影院 | 国产精品久久久一区二区三区 | 色综合久久久久综合一本到桃花网 | 国产亚洲精品久久久闺蜜 | 亚洲啪av永久无码精品放毛片 | 夜夜躁日日躁狠狠久久av | 亚洲日韩av一区二区三区四区 | 国产精品igao视频网 | 在线视频网站www色 | 亚洲 欧美 激情 小说 另类 | 日韩在线不卡免费视频一区 | 久久久久久a亚洲欧洲av冫 | 亚洲中文字幕av在天堂 | 国产美女极度色诱视频www | 欧美人与禽猛交狂配 | 麻豆人妻少妇精品无码专区 | 在线播放免费人成毛片乱码 | 成人性做爰aaa片免费看不忠 | 国产精品二区一区二区aⅴ污介绍 | 成在人线av无码免观看麻豆 | 国产超碰人人爽人人做人人添 | 天天拍夜夜添久久精品 | 青青青手机频在线观看 | 国产明星裸体无码xxxx视频 | 麻豆成人精品国产免费 | 日韩欧美中文字幕公布 | 亚洲人成网站色7799 | 人人妻人人澡人人爽欧美一区九九 | 美女毛片一区二区三区四区 | 久热国产vs视频在线观看 | 久久精品人人做人人综合 | 熟女俱乐部五十路六十路av | 日本大香伊一区二区三区 | 国产电影无码午夜在线播放 | 国产成人一区二区三区在线观看 | 亚洲男女内射在线播放 | 九九久久精品国产免费看小说 | 荡女精品导航 | 精品国产一区二区三区四区 | 亚洲一区二区三区播放 | 成年美女黄网站色大免费全看 | 天天综合网天天综合色 | 中文字幕乱码人妻无码久久 | 国精品人妻无码一区二区三区蜜柚 | 纯爱无遮挡h肉动漫在线播放 | 国产精品美女久久久久av爽李琼 | 无码av最新清无码专区吞精 | 成人无码视频免费播放 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 99麻豆久久久国产精品免费 | 亚洲s色大片在线观看 | 无码国模国产在线观看 | 色 综合 欧美 亚洲 国产 | 久久99热只有频精品8 | 国产超级va在线观看视频 | 日韩av激情在线观看 | 亚洲国产精品一区二区美利坚 | 国内老熟妇对白xxxxhd | 亚洲色无码一区二区三区 | 亚洲一区二区观看播放 | 亚洲理论电影在线观看 | 国产精品美女久久久网av | 国产精品亚洲а∨无码播放麻豆 | 欧洲熟妇色 欧美 | 丰满人妻精品国产99aⅴ | 一本色道久久综合亚洲精品不卡 | 久久99精品久久久久久 | 青青草原综合久久大伊人精品 | 日本www一道久久久免费榴莲 | 国产女主播喷水视频在线观看 | 久久久久免费看成人影片 | 亚洲欧美日韩国产精品一区二区 | 亚洲国精产品一二二线 | 日韩人妻少妇一区二区三区 | 免费网站看v片在线18禁无码 | 正在播放东北夫妻内射 | 少妇人妻大乳在线视频 | 国产精品高潮呻吟av久久4虎 | 久久久久99精品成人片 | 一本大道久久东京热无码av | 国产精品亚洲综合色区韩国 | 无码精品国产va在线观看dvd | 在线观看免费人成视频 | 激情国产av做激情国产爱 | 麻豆精品国产精华精华液好用吗 | 亚洲日韩精品欧美一区二区 | 无码午夜成人1000部免费视频 | 强伦人妻一区二区三区视频18 | 少妇太爽了在线观看 | 久久www免费人成人片 | 亚洲欧美综合区丁香五月小说 | 性做久久久久久久免费看 | 丰满少妇弄高潮了www | 亚洲一区二区三区香蕉 | 国产精品人人妻人人爽 | 特级做a爰片毛片免费69 | 天堂在线观看www | 国产乡下妇女做爰 | 麻豆国产丝袜白领秘书在线观看 | 亚洲第一网站男人都懂 | 伊人久久大香线蕉午夜 | 亚洲成a人片在线观看日本 | 人人妻人人澡人人爽欧美精品 | 一个人看的视频www在线 | 欧美喷潮久久久xxxxx | 无码人妻出轨黑人中文字幕 | 国产一区二区三区日韩精品 | aa片在线观看视频在线播放 | 成在人线av无码免观看麻豆 | 成年美女黄网站色大免费全看 | 亚洲经典千人经典日产 | 东京热男人av天堂 | 色五月丁香五月综合五月 | 最近中文2019字幕第二页 | 俺去俺来也在线www色官网 | 久久国产精品_国产精品 | 红桃av一区二区三区在线无码av | 国产色精品久久人妻 | 亚洲精品一区二区三区在线 | 搡女人真爽免费视频大全 | 色 综合 欧美 亚洲 国产 | 天天摸天天碰天天添 | 十八禁真人啪啪免费网站 | 国产免费观看黄av片 | 性啪啪chinese东北女人 | 国产一区二区三区四区五区加勒比 | 国产免费久久精品国产传媒 | 国产人妻久久精品二区三区老狼 | 国产香蕉尹人综合在线观看 | 精品久久久中文字幕人妻 | 国产精品无码成人午夜电影 | 欧美日韩一区二区免费视频 | 国产成人无码av在线影院 | 午夜性刺激在线视频免费 | 中文字幕无码视频专区 | 蜜桃视频插满18在线观看 | 欧美国产亚洲日韩在线二区 | 婷婷色婷婷开心五月四房播播 | 久久亚洲国产成人精品性色 | √天堂资源地址中文在线 | 成人无码视频在线观看网站 | 亚洲国产精品无码一区二区三区 | 成年美女黄网站色大免费视频 | 国色天香社区在线视频 | 精品人妻中文字幕有码在线 | 无码纯肉视频在线观看 | 水蜜桃色314在线观看 | 亚洲国产精品久久人人爱 | 国产精品丝袜黑色高跟鞋 | 综合网日日天干夜夜久久 | 日韩精品a片一区二区三区妖精 | 亚洲日韩av一区二区三区四区 | 少妇被黑人到高潮喷出白浆 | 免费人成在线观看网站 | а√天堂www在线天堂小说 | 日韩成人一区二区三区在线观看 | 奇米影视7777久久精品人人爽 | 久久久精品国产sm最大网站 | 中文字幕av伊人av无码av | 国内精品久久久久久中文字幕 | 最近免费中文字幕中文高清百度 | 亚洲国产精品一区二区美利坚 | 无码乱肉视频免费大全合集 | 国产精品对白交换视频 | 国产精品资源一区二区 | 自拍偷自拍亚洲精品10p | 亚洲一区二区三区 | 久久久久久久人妻无码中文字幕爆 | 久久综合给合久久狠狠狠97色 | 宝宝好涨水快流出来免费视频 | 天堂а√在线中文在线 | 人人爽人人爽人人片av亚洲 | 国产成人久久精品流白浆 | 国产99久久精品一区二区 | 自拍偷自拍亚洲精品被多人伦好爽 | 无码人妻精品一区二区三区不卡 | 国产精品美女久久久网av | 永久黄网站色视频免费直播 | 性生交大片免费看l | 欧美熟妇另类久久久久久多毛 | 欧美刺激性大交 | 欧美日本免费一区二区三区 | 欧美老熟妇乱xxxxx | 乱人伦人妻中文字幕无码久久网 | 久久综合给久久狠狠97色 | 欧美第一黄网免费网站 | 亚洲色www成人永久网址 | 麻花豆传媒剧国产免费mv在线 | 久久aⅴ免费观看 | 国产精品久久久久7777 | 少妇性l交大片欧洲热妇乱xxx | 亚洲精品国偷拍自产在线麻豆 | 亚洲精品一区国产 | 亚洲欧美精品aaaaaa片 | 国产香蕉97碰碰久久人人 | 欧美一区二区三区视频在线观看 | 麻豆国产人妻欲求不满 | 国产人成高清在线视频99最全资源 | 国产人成高清在线视频99最全资源 | 我要看www免费看插插视频 | 亚洲人成人无码网www国产 | 成年美女黄网站色大免费视频 | 丁香花在线影院观看在线播放 | 日日噜噜噜噜夜夜爽亚洲精品 | 97久久超碰中文字幕 | 乱码午夜-极国产极内射 | 亚洲欧美日韩国产精品一区二区 | 婷婷五月综合缴情在线视频 | 东京无码熟妇人妻av在线网址 | 2019午夜福利不卡片在线 | 国产无套内射久久久国产 | 在线精品国产一区二区三区 | 少妇高潮喷潮久久久影院 | 狂野欧美激情性xxxx | 国产亚洲精品久久久久久久久动漫 | 久9re热视频这里只有精品 | 欧美人妻一区二区三区 | 亚洲国产精品久久人人爱 | 沈阳熟女露脸对白视频 | 人妻aⅴ无码一区二区三区 | 在线a亚洲视频播放在线观看 | 1000部啪啪未满十八勿入下载 | 久久婷婷五月综合色国产香蕉 | 久久99精品国产.久久久久 | 欧美自拍另类欧美综合图片区 | 夫妻免费无码v看片 | 久久99精品久久久久婷婷 | 久久99热只有频精品8 | 久久精品国产99精品亚洲 | 成人免费视频视频在线观看 免费 | 熟妇人妻无乱码中文字幕 | 亚洲中文字幕成人无码 | 樱花草在线播放免费中文 | 欧美人与动性行为视频 | 中国女人内谢69xxxx | 精品一区二区三区波多野结衣 | 少妇高潮一区二区三区99 | 欧美肥老太牲交大战 | 国产特级毛片aaaaaa高潮流水 | 亚洲爆乳精品无码一区二区三区 | 狂野欧美性猛交免费视频 | 一本久久伊人热热精品中文字幕 | 黑人玩弄人妻中文在线 | 精品乱码久久久久久久 | 自拍偷自拍亚洲精品被多人伦好爽 | 亚洲欧美色中文字幕在线 | 一区二区三区乱码在线 | 欧洲 | 成年美女黄网站色大免费视频 | 亚洲国产高清在线观看视频 | 国内老熟妇对白xxxxhd | 亚洲热妇无码av在线播放 | 沈阳熟女露脸对白视频 | 亚洲综合精品香蕉久久网 | 日欧一片内射va在线影院 | 久久人妻内射无码一区三区 | 荫蒂被男人添的好舒服爽免费视频 | 人人澡人摸人人添 | 偷窥村妇洗澡毛毛多 | 日韩精品无码免费一区二区三区 | 日韩人妻系列无码专区 | 熟女俱乐部五十路六十路av | 精品无码国产自产拍在线观看蜜 | 两性色午夜免费视频 | 久久久久久久人妻无码中文字幕爆 | 中文字幕中文有码在线 | 国产亚av手机在线观看 | 午夜无码人妻av大片色欲 | 亚洲毛片av日韩av无码 | 麻豆成人精品国产免费 | 中国女人内谢69xxxx | 亚洲日本va午夜在线电影 | 国产精品久久久久久无码 | 国产人妖乱国产精品人妖 | 亚洲国产精品一区二区第一页 | aⅴ在线视频男人的天堂 | 狠狠噜狠狠狠狠丁香五月 | 亚洲高清偷拍一区二区三区 | 国产9 9在线 | 中文 | 国产成人综合美国十次 | 亚洲国产精品久久人人爱 | 成人免费视频视频在线观看 免费 | 午夜熟女插插xx免费视频 | 中文字幕无码热在线视频 | 激情爆乳一区二区三区 | 水蜜桃av无码 | 少妇人妻大乳在线视频 | 欧美乱妇无乱码大黄a片 | 在线观看国产午夜福利片 | 国产精品毛多多水多 | 欧美日韩久久久精品a片 | 午夜精品一区二区三区的区别 | 国产成人无码av片在线观看不卡 | 99精品国产综合久久久久五月天 | 亚洲一区二区三区偷拍女厕 | 亚洲人成人无码网www国产 | 人妻无码αv中文字幕久久琪琪布 | 欧美zoozzooz性欧美 | 国产一区二区三区影院 | 国产亚洲欧美日韩亚洲中文色 | 女人被男人爽到呻吟的视频 | 无码人妻精品一区二区三区不卡 | 性史性农村dvd毛片 | 男女超爽视频免费播放 | 日日橹狠狠爱欧美视频 | 乱人伦人妻中文字幕无码久久网 | 国产又粗又硬又大爽黄老大爷视 | 亚洲aⅴ无码成人网站国产app | 国产农村妇女高潮大叫 | 久久久国产精品无码免费专区 | 亚洲成a人片在线观看日本 | 亚洲成a人片在线观看日本 | 东北女人啪啪对白 | 少妇一晚三次一区二区三区 | 亚洲欧美综合区丁香五月小说 | 亚洲热妇无码av在线播放 | 奇米影视888欧美在线观看 | 欧美xxxx黑人又粗又长 | 国产精品a成v人在线播放 | 波多野结衣高清一区二区三区 | 久久午夜无码鲁丝片 | 欧美xxxxx精品 | 巨爆乳无码视频在线观看 | 免费视频欧美无人区码 | 日本丰满护士爆乳xxxx | 国产精品亚洲а∨无码播放麻豆 | 人妻少妇被猛烈进入中文字幕 | 九月婷婷人人澡人人添人人爽 | 亚洲精品一区三区三区在线观看 | 国产超级va在线观看视频 | 亚洲精品鲁一鲁一区二区三区 | 国产在线精品一区二区三区直播 | 国产国产精品人在线视 | 欧美激情一区二区三区成人 | 久久zyz资源站无码中文动漫 | 国产在线一区二区三区四区五区 | 精品亚洲成av人在线观看 | 久久国产36精品色熟妇 | 狠狠综合久久久久综合网 | 99久久99久久免费精品蜜桃 | 亚洲成a人片在线观看无码 | 精品国产乱码久久久久乱码 | 99久久99久久免费精品蜜桃 | 成人免费视频视频在线观看 免费 | 1000部啪啪未满十八勿入下载 | www国产亚洲精品久久网站 | 一区二区传媒有限公司 | 婷婷色婷婷开心五月四房播播 | 最近的中文字幕在线看视频 | 牲欲强的熟妇农村老妇女视频 | 久久久久亚洲精品中文字幕 | 澳门永久av免费网站 | 九九热爱视频精品 | 波多野结衣 黑人 | 日本熟妇乱子伦xxxx | 色婷婷综合激情综在线播放 | 强辱丰满人妻hd中文字幕 | 国产午夜无码视频在线观看 | 日产国产精品亚洲系列 | 久久无码中文字幕免费影院蜜桃 | 国产精品亚洲lv粉色 | 国色天香社区在线视频 | 国产偷国产偷精品高清尤物 | 色婷婷av一区二区三区之红樱桃 | 丰腴饱满的极品熟妇 | 野狼第一精品社区 | 免费无码一区二区三区蜜桃大 | 日日麻批免费40分钟无码 | 久久精品中文闷骚内射 | 国产成人人人97超碰超爽8 | 久久久无码中文字幕久... | 鲁一鲁av2019在线 | 荫蒂添的好舒服视频囗交 | 人妻天天爽夜夜爽一区二区 | 国产精品va在线观看无码 | 野外少妇愉情中文字幕 | 午夜免费福利小电影 | 久久无码人妻影院 | 97资源共享在线视频 | 99久久精品无码一区二区毛片 | 一个人免费观看的www视频 | 性欧美大战久久久久久久 | 性做久久久久久久免费看 | 国产午夜无码视频在线观看 | 亚洲小说图区综合在线 | 国产精品嫩草久久久久 | 波多野结衣高清一区二区三区 | 亚洲一区二区三区含羞草 | 97精品国产97久久久久久免费 | 亚洲国产成人a精品不卡在线 | 亚洲中文字幕无码中字 | 国产人妻精品一区二区三区不卡 | 丰满妇女强制高潮18xxxx | 亚洲成a人片在线观看无码 | 国产成人综合美国十次 | 强伦人妻一区二区三区视频18 | 国内精品人妻无码久久久影院蜜桃 | 久久国产精品偷任你爽任你 | 奇米影视7777久久精品人人爽 | 日日夜夜撸啊撸 | 爱做久久久久久 | 中文字幕无码免费久久9一区9 | 亚洲日韩中文字幕在线播放 | 国产精品va在线观看无码 | 日产精品99久久久久久 | 东京热一精品无码av | 亚洲精品一区二区三区婷婷月 | 国产明星裸体无码xxxx视频 | 5858s亚洲色大成网站www | 午夜福利不卡在线视频 | 成 人影片 免费观看 | 中文字幕精品av一区二区五区 | 国产亚洲视频中文字幕97精品 | 国产精品va在线播放 | 一本大道久久东京热无码av | 极品尤物被啪到呻吟喷水 | 老司机亚洲精品影院无码 | 日本精品高清一区二区 | 扒开双腿吃奶呻吟做受视频 | 国产福利视频一区二区 | 红桃av一区二区三区在线无码av | 荡女精品导航 | 激情内射日本一区二区三区 | 亚拍精品一区二区三区探花 | 精品 日韩 国产 欧美 视频 | 亚洲精品久久久久久一区二区 | 国产精品亚洲五月天高清 | 东京热男人av天堂 | 中文字幕+乱码+中文字幕一区 | 高清不卡一区二区三区 | 国产乱码精品一品二品 | 国产精品久久久一区二区三区 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 2020久久香蕉国产线看观看 | 无码成人精品区在线观看 | 久久国产劲爆∧v内射 | 99精品国产综合久久久久五月天 | 国产片av国语在线观看 | 伊人久久大香线蕉亚洲 | 亚洲成色www久久网站 | 精品国产精品久久一区免费式 | 在线a亚洲视频播放在线观看 | 97无码免费人妻超级碰碰夜夜 | 少妇被粗大的猛进出69影院 | 鲁鲁鲁爽爽爽在线视频观看 | 国产成人精品优优av | 女人高潮内射99精品 | 亚洲高清偷拍一区二区三区 | 日韩无码专区 | 欧美老妇交乱视频在线观看 | 日韩av激情在线观看 | 一本一道久久综合久久 | 岛国片人妻三上悠亚 | 色综合久久久无码网中文 | 国产精品第一区揄拍无码 | 亚洲日韩中文字幕在线播放 | 国产成人综合在线女婷五月99播放 | 纯爱无遮挡h肉动漫在线播放 | 老熟妇乱子伦牲交视频 | 最新国产乱人伦偷精品免费网站 | 少妇人妻大乳在线视频 | 偷窥日本少妇撒尿chinese | 偷窥村妇洗澡毛毛多 | 国产热a欧美热a在线视频 | 久久精品女人天堂av免费观看 | а天堂中文在线官网 | 领导边摸边吃奶边做爽在线观看 | 欧美国产亚洲日韩在线二区 | 宝宝好涨水快流出来免费视频 | 综合激情五月综合激情五月激情1 | 乱人伦中文视频在线观看 | 亚洲一区二区三区在线观看网站 | 亚洲乱亚洲乱妇50p | 亚洲男人av天堂午夜在 | 国产疯狂伦交大片 | 亚洲精品午夜无码电影网 | 露脸叫床粗话东北少妇 | 久久综合香蕉国产蜜臀av | 中文毛片无遮挡高清免费 | 久久精品丝袜高跟鞋 | 狠狠色欧美亚洲狠狠色www | 99精品国产综合久久久久五月天 | 中文毛片无遮挡高清免费 | 国产av一区二区精品久久凹凸 | 国产亲子乱弄免费视频 | 国精品人妻无码一区二区三区蜜柚 | 东京热无码av男人的天堂 | 无码人妻精品一区二区三区下载 | 波多野结衣av在线观看 | 久久久中文字幕日本无吗 | 久久综合九色综合97网 | 强奷人妻日本中文字幕 | 中文字幕无码热在线视频 | 国产精品福利视频导航 | 精品欧洲av无码一区二区三区 | 国产超碰人人爽人人做人人添 | 国产成人精品久久亚洲高清不卡 | 日本精品高清一区二区 | 国产精品免费大片 | 午夜男女很黄的视频 | аⅴ资源天堂资源库在线 | 强奷人妻日本中文字幕 | a在线亚洲男人的天堂 | 亚洲s码欧洲m码国产av | 55夜色66夜色国产精品视频 | 牲交欧美兽交欧美 | 国产成人无码一二三区视频 | 亚洲欧洲日本综合aⅴ在线 | 99精品国产综合久久久久五月天 | 综合激情五月综合激情五月激情1 | 亚洲欧洲中文日韩av乱码 | 国产精品手机免费 | www国产亚洲精品久久久日本 | 性生交片免费无码看人 | 在线观看欧美一区二区三区 | 扒开双腿吃奶呻吟做受视频 | 久久精品视频在线看15 | 牲欲强的熟妇农村老妇女视频 | 在线观看国产一区二区三区 | 欧美亚洲日韩国产人成在线播放 | 水蜜桃色314在线观看 | 亚洲精品中文字幕 | 久久99精品久久久久久 | 亚洲日本在线电影 | 午夜福利电影 | 国产色在线 | 国产 | 少妇无码av无码专区在线观看 | 爆乳一区二区三区无码 | 国产精品亚洲а∨无码播放麻豆 | 中文字幕无码热在线视频 | 久久视频在线观看精品 | 久久久国产一区二区三区 | 日韩亚洲欧美精品综合 | 性欧美熟妇videofreesex | 国产人妖乱国产精品人妖 | 曰本女人与公拘交酡免费视频 | 国产午夜福利亚洲第一 | 亚洲熟妇自偷自拍另类 | 色偷偷人人澡人人爽人人模 | 99久久久无码国产aaa精品 | 伊人久久大香线蕉午夜 | 欧美喷潮久久久xxxxx | 亚洲日韩乱码中文无码蜜桃臀网站 | 最近免费中文字幕中文高清百度 | 欧美性色19p | 国产午夜福利100集发布 | 又大又硬又爽免费视频 | 久久亚洲a片com人成 | 小鲜肉自慰网站xnxx | 中文字幕 亚洲精品 第1页 | 亚洲日韩av一区二区三区中文 | 狠狠噜狠狠狠狠丁香五月 | 成人无码视频免费播放 | 亚洲色成人中文字幕网站 | 国产情侣作爱视频免费观看 | 亚洲综合在线一区二区三区 | 精品国产福利一区二区 | 给我免费的视频在线观看 | 亚洲一区二区三区无码久久 | 国产免费无码一区二区视频 | 国内丰满熟女出轨videos | 综合人妻久久一区二区精品 | 岛国片人妻三上悠亚 | 玩弄少妇高潮ⅹxxxyw | 精品午夜福利在线观看 | 麻豆成人精品国产免费 | 免费观看又污又黄的网站 | 亚洲日韩乱码中文无码蜜桃臀网站 | 欧美丰满熟妇xxxx性ppx人交 | 日韩人妻无码中文字幕视频 | 狠狠亚洲超碰狼人久久 | 兔费看少妇性l交大片免费 | 中文无码精品a∨在线观看不卡 | 精品国产麻豆免费人成网站 | 中文毛片无遮挡高清免费 | 日本一区二区三区免费高清 | 精品人妻av区 | 免费人成在线观看网站 | 樱花草在线播放免费中文 | 亚洲国产精品一区二区第一页 | 免费无码一区二区三区蜜桃大 | a在线亚洲男人的天堂 | 无码国产激情在线观看 | 丰满肥臀大屁股熟妇激情视频 | 日韩欧美中文字幕在线三区 | 少妇无码av无码专区在线观看 | 六月丁香婷婷色狠狠久久 | 国产午夜亚洲精品不卡 | 国色天香社区在线视频 | 永久免费观看美女裸体的网站 | 久久亚洲精品中文字幕无男同 | 99麻豆久久久国产精品免费 | 国产小呦泬泬99精品 | 欧美猛少妇色xxxxx | 熟妇人妻中文av无码 | 国产亚洲精品久久久久久久 | 无码纯肉视频在线观看 | 日本va欧美va欧美va精品 | 香蕉久久久久久av成人 | 国产麻豆精品精东影业av网站 | √天堂资源地址中文在线 | 影音先锋中文字幕无码 | 久久精品人妻少妇一区二区三区 | 国产精品爱久久久久久久 | 97久久超碰中文字幕 | 免费观看激色视频网站 | 国产精品理论片在线观看 | 色一情一乱一伦一视频免费看 | 内射后入在线观看一区 | 人人爽人人爽人人片av亚洲 | 精品国产乱码久久久久乱码 | 国产精品二区一区二区aⅴ污介绍 | 国产精品久免费的黄网站 | 在线看片无码永久免费视频 | 中文字幕无码日韩专区 | 国产精品香蕉在线观看 | 久久久久久a亚洲欧洲av冫 | 大胆欧美熟妇xx | 青青青手机频在线观看 | 波多野结衣一区二区三区av免费 | 亚无码乱人伦一区二区 | 水蜜桃色314在线观看 | 国产精品福利视频导航 | 少妇一晚三次一区二区三区 | 国产两女互慰高潮视频在线观看 | 自拍偷自拍亚洲精品10p | 97精品国产97久久久久久免费 | 亚洲色大成网站www国产 | 真人与拘做受免费视频一 | 又大又黄又粗又爽的免费视频 | 国产99久久精品一区二区 | 51国偷自产一区二区三区 | 人妻少妇精品视频专区 | 国语精品一区二区三区 | 国产无遮挡又黄又爽免费视频 | 国产精品久久久久久久影院 | √天堂资源地址中文在线 | 波多野结衣乳巨码无在线观看 | 亚洲欧美精品伊人久久 | 国产成人人人97超碰超爽8 | 欧洲欧美人成视频在线 | 久久午夜夜伦鲁鲁片无码免费 | 国产精品丝袜黑色高跟鞋 | 亚洲中文字幕久久无码 | 台湾无码一区二区 | 亚洲男人av香蕉爽爽爽爽 | www国产亚洲精品久久网站 | 啦啦啦www在线观看免费视频 | 国产精品久免费的黄网站 | 少女韩国电视剧在线观看完整 | 亚洲精品无码人妻无码 | 四虎国产精品免费久久 | 一个人看的视频www在线 | 久久久精品成人免费观看 | 国产农村妇女高潮大叫 | 俄罗斯老熟妇色xxxx | 精品欧美一区二区三区久久久 | 久久久国产一区二区三区 | 国产成人精品三级麻豆 | 国产精品久久久久9999小说 | 内射爽无广熟女亚洲 | 亚洲色欲久久久综合网东京热 | 亚洲中文字幕成人无码 | 欧美xxxx黑人又粗又长 | 无码av免费一区二区三区试看 | 国产婷婷色一区二区三区在线 | 亚洲精品欧美二区三区中文字幕 | 高清不卡一区二区三区 | 一个人免费观看的www视频 | 亚洲精品中文字幕乱码 | 国产人妖乱国产精品人妖 | 青青草原综合久久大伊人精品 | 牲欲强的熟妇农村老妇女 | 奇米影视888欧美在线观看 | 又色又爽又黄的美女裸体网站 | 99久久婷婷国产综合精品青草免费 | 欧美乱妇无乱码大黄a片 | 理论片87福利理论电影 | 亚洲国产高清在线观看视频 | а√资源新版在线天堂 | 国产成人精品视频ⅴa片软件竹菊 | 久久综合狠狠综合久久综合88 | 国产偷国产偷精品高清尤物 | 成人无码精品1区2区3区免费看 | 亚洲精品无码人妻无码 | 无套内射视频囯产 | 日日碰狠狠躁久久躁蜜桃 | 国产精品久久久久7777 | 欧美日本精品一区二区三区 | 国产免费无码一区二区视频 | 久久午夜无码鲁丝片 | 九月婷婷人人澡人人添人人爽 | 国产精品手机免费 | 国产亚洲欧美日韩亚洲中文色 | 亚洲精品午夜无码电影网 | 理论片87福利理论电影 | 中文字幕无码av激情不卡 | 国产成人久久精品流白浆 | 国产一区二区三区日韩精品 | 男女下面进入的视频免费午夜 | 999久久久国产精品消防器材 | 亚洲成av人片在线观看无码不卡 | 国产精品-区区久久久狼 | a片在线免费观看 | 国产成人精品视频ⅴa片软件竹菊 | 国产亚洲人成a在线v网站 | 国产97在线 | 亚洲 | 麻豆成人精品国产免费 | 亚欧洲精品在线视频免费观看 | 精品人妻人人做人人爽 | 波多野结衣 黑人 | 日产国产精品亚洲系列 | 性欧美熟妇videofreesex | 99久久久国产精品无码免费 | 99麻豆久久久国产精品免费 | 日本xxxx色视频在线观看免费 | 午夜性刺激在线视频免费 | 国产真实乱对白精彩久久 | 大屁股大乳丰满人妻 | 亚洲人成网站在线播放942 | 性做久久久久久久免费看 | 国产激情精品一区二区三区 | 欧美老熟妇乱xxxxx | 东北女人啪啪对白 | 九月婷婷人人澡人人添人人爽 | 精品久久8x国产免费观看 | 色婷婷综合激情综在线播放 | 九一九色国产 | 亚洲天堂2017无码中文 | 无码国产色欲xxxxx视频 | 1000部啪啪未满十八勿入下载 | av在线亚洲欧洲日产一区二区 | 最近中文2019字幕第二页 | 丰满少妇女裸体bbw | 国产精品欧美成人 | 久热国产vs视频在线观看 | 无码人妻久久一区二区三区不卡 | 国产精品视频免费播放 | 日本一卡二卡不卡视频查询 | 无人区乱码一区二区三区 | 玩弄人妻少妇500系列视频 | 男女下面进入的视频免费午夜 | 久久视频在线观看精品 | 国产精品久久久久影院嫩草 | 超碰97人人射妻 | 曰本女人与公拘交酡免费视频 | 无码av免费一区二区三区试看 | 日本一区二区更新不卡 | 日韩欧美中文字幕在线三区 | 国产激情精品一区二区三区 | 欧美人与善在线com | 少妇邻居内射在线 | √天堂资源地址中文在线 | 国产农村乱对白刺激视频 | 无码一区二区三区在线 | 欧美性生交xxxxx久久久 | 天堂а√在线地址中文在线 | 国产无遮挡又黄又爽又色 | 国产精品久久久久久久影院 | 免费无码av一区二区 | 亚洲毛片av日韩av无码 | 97久久国产亚洲精品超碰热 | 国产亲子乱弄免费视频 | 免费观看又污又黄的网站 | 欧美性生交活xxxxxdddd | 日日躁夜夜躁狠狠躁 | 日本丰满护士爆乳xxxx | 国产亲子乱弄免费视频 | 少妇性l交大片 | 欧美一区二区三区视频在线观看 | 成人片黄网站色大片免费观看 | 亚洲 另类 在线 欧美 制服 | 台湾无码一区二区 | 国产亚洲美女精品久久久2020 | 熟妇人妻激情偷爽文 | 夜精品a片一区二区三区无码白浆 | 无码人妻av免费一区二区三区 | 亚洲中文无码av永久不收费 | 国产亚洲精品久久久久久大师 | 欧美 亚洲 国产 另类 | 精品久久综合1区2区3区激情 | 六十路熟妇乱子伦 | 亚洲国产精品一区二区美利坚 | 亚洲日本一区二区三区在线 | 无码av最新清无码专区吞精 | 国产精品久久久午夜夜伦鲁鲁 | 亚洲熟妇色xxxxx欧美老妇y | 狠狠色噜噜狠狠狠7777奇米 | 牲欲强的熟妇农村老妇女视频 | 成人欧美一区二区三区黑人免费 | 久久99精品久久久久久 | yw尤物av无码国产在线观看 | 一区二区三区乱码在线 | 欧洲 | 性欧美大战久久久久久久 | 成人无码影片精品久久久 | 日本一卡二卡不卡视频查询 |