精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

一名合格的數據分析師分享Python網絡爬蟲二三事

開發 開發工具
作為一名合格的數據分析師,其完整的技術知識體系必須貫穿數據獲取、數據存儲、數據提取、數據分析、數據挖掘、數據可視化等各大部分。

一、前言

作為一名合格的數據分析師,其完整的技術知識體系必須貫穿數據獲取、數據存儲、數據提取、數據分析、數據挖掘、數據可視化等各大部分。

在此作為初出茅廬的數據小白,我將會把自己學習數據科學過程中遇到的一些問題記錄下來,以便后續的查閱,同時也希望與各路同學一起交流、一起進步。剛好前段時間學習了Python網絡爬蟲,在此將網絡爬蟲做一個總結。

[[184068]]

二、何為網絡爬蟲?

1. 爬蟲場景

我們先自己想象一下平時到天貓商城購物(PC端)的步驟,可能就是:

打開瀏覽器==》搜索天貓商城==》點擊鏈接進入天貓商城==》選擇所需商品類目(站內搜索)==》瀏覽商品(價格、詳情參數、評論等)==》點擊鏈接==》進入下一個商品頁面......

這樣子周而復始。當然這其中的搜索也是爬蟲的應用之一。簡單講,網絡爬蟲是類似又區別于上述場景的一種程序。

2. 爬蟲分類

(1)分類與關系

 

一般最常用的爬蟲類型主要有通用爬蟲和聚焦爬蟲,其中聚焦爬蟲又分為淺聚焦與深聚焦,三者關系如下圖:

聚焦爬蟲又分為淺聚焦與深聚焦

(2)區別

 

通用爬蟲與聚焦爬蟲的區別就在有沒有對信息進行過濾以盡量保證只抓取與主題相關的網頁信息。

(3)聚焦爬蟲過濾方法

 

  • 淺聚焦爬蟲

選取符合目標主題的種子URL,例如我們定義抓取的信息為招聘信息,我們便可將招聘網站的URL(拉勾網、大街網等)作為種子URL,這樣便保證了抓取內容與我們定義的主題的一致性。

  • 深聚焦爬蟲

一般有兩種,一是針對內容二是針對URL。其中針對內容的如頁面中絕大部分超鏈接都是帶有錨文本的,我們可以根據錨文本進行篩選。

3. 爬蟲原理

總的來說,爬蟲就是從種子URL開始,通過 HTTP 請求獲取頁面內容,并從頁面內容中通過各種技術手段解析出更多的 URL,遞歸地請求獲取頁面的程序網絡爬蟲,總結其主要原理如下圖(其中紅色為聚焦爬蟲相對通用爬蟲所需額外進行步驟):

爬蟲主要原理

4. 爬蟲應用

網絡爬蟲可以做的事情很多,如以下列出:

  • 搜索引擎
  • 采集數據(金融、商品、競品等)
  • 廣告過濾
  • ……

其實就我們個人興趣,學完爬蟲我們可以看看當當網上哪種技術圖書賣得比較火(銷量、評論等信息)、看某個在線教育網站哪門網絡課程做得比較成功、看雙十一天貓的活動情況等等,只要我們感興趣的數據,一般的話都可以爬取得到,不過有些網站比較狡猾,設置各種各樣的反扒機制。總而言之,網絡爬蟲可以幫助我們做很多有趣的事情。

三、網絡爬蟲基礎

個人建議本章除3.3以外,其他內容可以大致先看一下,有些許印象即可,等到后面已經完成一些簡單爬蟲后或者在寫爬蟲過程中遇到一些問題再回頭來鞏固一下,這樣子或許更有助于我們進一步網絡理解爬蟲。

1. HTTP協議

HTTP 協議是爬蟲的基礎,通過封裝 TCP/IP 協議鏈接,簡化了網絡請求的流程,使得用戶不需要關注三次握手,丟包超時等底層交互。

2. 前端技術

作為新手,個人覺得入門的話懂一點HTML與JavaScript就可以實現基本的爬蟲項目,HTML主要協助我們處理靜態頁面,而實際上很多數據并不是我們簡單的右擊查看網頁源碼便可以看到的,而是存在JSON(JavaScript Object Notation)文件中,這時我們便需要采取抓包分析,詳見《5.2 爬取基于Ajax技術網頁數據》。

3. 正則表達式與XPath

做爬蟲必不可少的步驟便是做解析。正則表達式是文本匹配提取的利器,并且被各種語言支持。XPath即為XML路徑語言,類似Windows的文件路徑,區別就在XPath是應用在網頁頁面中來定位我們所需內容的精確位置。

四、網絡爬蟲常見問題

1. 爬蟲利器——python

Python 是一種十分便利的腳本語言,廣泛被應用在各種爬蟲框架。Python提供了如urllib、re、json、pyquery等模塊,同時前人又利用Python造了許許多多的輪,如Scrapy框架、PySpider爬蟲系統等,所以做爬蟲Python是一大利器。

說明:本章開發環境細節如下

  • 系統環境:windows 8.1
  • 開發語言:Python3.5
  • 開發工具:Spyder、Pycharm
  • 輔助工具:Chrome瀏覽器

2. 編碼格式

Python3中,只有Unicode編碼的為str,其他編碼格式如gbk,utf-8,gb2312等都為bytes,在編解碼過程中字節bytes通過解碼方法decode()解碼為字符串str,然后字符串str通過編碼方法encode()編碼為字節bytes,關系如下圖:

字符串str通過編碼方法encode()編碼為字節bytes,關系

實戰——爬取當當網

爬取網頁

  1. In [5]:import urllib.request 
  2.    ...:data = urllib.request.urlopen("http://www.dangdang.com/").read() 
  3.  
  4. #爬取的data中的<title>標簽中的內容如下: 
  5.  
  6. <title>\xb5\xb1\xb5\xb1\xa1\xaa\xcd\xf8\xc9\xcf\xb9\xba\xce\xef\xd6\xd0\xd0\xc4\xa3\xba\xcd\xbc\xca\xe9\xa1\xa2\xc4\xb8\xd3\xa4\xa1\xa2\xc3\xc0\xd7\xb1\xa1\xa2\xbc\xd2\xbe\xd3\xa1\xa2\xca\xfd\xc2\xeb\xa1\xa2\xbc\xd2\xb5\xe7\xa1\xa2\xb7\xfe\xd7\xb0\xa1\xa2\xd0\xac\xb0\xfc\xb5\xc8\xa3\xac\xd5\xfd\xc6\xb7\xb5\xcd\xbc\xdb\xa3\xac\xbb\xf5\xb5\xbd\xb8\xb6\xbf\xee</title> 

查看編碼格式

  1. In [5]:import chardet 
  2.    ...:chardet.detect(data) 
  3. Out[5]: {'confidence': 0.99, 'encoding': 'GB2312'} 

可知爬取到的網頁是GB2312編碼,這是漢字的國標碼,專門用來表示漢字。

解碼

  1. In [5]:decodeData = data.decode("gbk") 
  1. #此時bytes已經解碼成str,<title>標簽內容解碼結果如下: 
  2.  
  3. <title>當當—網上購物中心:圖書、母嬰、美妝、家居、數碼、家電、服裝、鞋包等,正品低價,貨到付款</title> 

重編碼

  1. dataEncode = decodeData.encode("utf-8","ignore") 
  2.  
  3. #重編碼結果 
  4.  
  5. <title>\xe5\xbd\x93\xe5\xbd\x93\xe2\x80\x94\xe7\xbd\x91\xe4\xb8\x8a\xe8\xb4\xad\xe7\x89\xa9\xe4\xb8\xad\xe5\xbf\x83\xef\xbc\x9a\xe5\x9b\xbe\xe4\xb9\xa6\xe3\x80\x81\xe6\xaf\x8d\xe5\xa9\xb4\xe3\x80\x81\xe7\xbe\x8e\xe5\xa6\x86\xe3\x80\x81\xe5\xae\xb6\xe5\xb1\x85\xe3\x80\x81\xe6\x95\xb0\xe7\xa0\x81\xe3\x80\x81\xe5\xae\xb6\xe7\x94\xb5\xe3\x80\x81\xe6\x9c\x8d\xe8\xa3\x85\xe3\x80\x81\xe9\x9e\x8b\xe5\x8c\x85\xe7\xad\x89\xef\xbc\x8c\xe6\xad\xa3\xe5\x93\x81\xe4\xbd\x8e\xe4\xbb\xb7\xef\xbc\x8c\xe8\xb4\xa7\xe5\x88\xb0\xe4\xbb\x98\xe6\xac\xbe</title> 

 

3. 超時設置

允許超時

data = urllib.request.urlopen(“http://www.dangdang.com/”,timeout=3).read() 

線程推遲(單位為秒)

import timetime.sleep(3) 

4. 異常處理

每個程序都不可避免地要進行異常處理,爬蟲也不例外,假如不進行異常處理,可能導致爬蟲程序直接崩掉。

1. 網絡爬蟲中處理異常的種類與關系

 

(1)URLError

通常,URLError在沒有網絡連接(沒有路由到特定服務器),或者服務器不存在的情況下產生。

(2)HTTPError

首先我們要明白服務器上每一個HTTP 應答對象response都包含一個數字“狀態碼”,該狀態碼表示HTTP協議所返回的響應的狀態,這就是HTTPError。比如當產生“404 Not Found”的時候,便表示“沒有找到對應頁面”,可能是輸錯了URL地址,也可能IP被該網站屏蔽了,這時便要使用代理IP進行爬取數據,關于代理IP的設定我們下面會講到。

(3)兩者關系

兩者是父類與子類的關系,即HTTPError是URLError的子類,HTTPError有異常狀態碼與異常原因,URLError沒有異常狀態碼。所以,我們在處理的時候,不能使用URLError直接代替HTTPError。同時,Python中所有異常都是基類Exception的成員,所有異常都從此基類繼承,而且都在exceptions模塊中定義。如果要代替,必須要判斷是否有狀態碼屬性。

2. Python中有一套異常處理機制語法

 

(1)try-except語句

  1. try: 
  2.   blockexcept Exception as e: 
  3.   blockelse: 
  4.   block 
  • try 語句:捕獲異常
  • except語句:處理不同的異常,Exception是異常的種類,在爬蟲中常見如上文所述。
  • e:異常的信息,可供后面打印輸出
  • else: 表示若沒有發生異常,當try執行完畢之后,就會執行else

(2)try-except-finally語句

  1. try: 
  2.   block except Exception as e: 
  3.   blockfinally: 
  4.   block 

假如try沒有捕獲到錯誤信息,則直接跳過except語句轉而執行finally語句,其實無論是否捕獲到異常都會執行finally語句,因此一般我們都會將一些釋放資源的工作放到該步中,如關閉文件句柄或者關閉數據庫連接等。

4. 自動模擬HTTP請求

一般客戶端需要通過HTTP請求才能與服務端進行通信,常見的HTTP請求有POST與GET兩種。例如我們打開淘寶網頁后一旦HTML加載完成,瀏覽器將會發送GET請求去獲取圖片等,這樣子我們才能看到一個完整的動態頁面,假如我們瀏覽后需要下單那么還需要向服務器傳遞登錄信息。

(1)GET方式

向服務器發索取數據的一種請求,將請求數據融入到URL之中,數據在URL中可以看到。

(2)POST方式

向服務器提交數據的一種請求,將數據放置在HTML HEADER內提交。從安全性講,POST方式相對于GET方式較為安全,畢竟GET方式是直接將請求數據以明文的形式展現在URL中。

5. cookies處理

cookies是某些網站為了辨別用戶身份、進行session跟蹤而儲存在用戶本地終端上的數據(通常經過加密)。

6. 瀏覽器偽裝

(1)原理

瀏覽器偽裝是防屏蔽的方法之一,簡言之,其原理就是在客戶端在向服務端發送的請求中添加報頭信息,告訴服務器“我是瀏覽器”

(2)如何查看客戶端信息?

通過Chrome瀏覽器按F12==》選擇Network==》刷新后點擊Name下任一個地址,便可以看到請求報文和相應報文信息。以下是在百度上搜索簡書的請求報文信息,在爬蟲中我們只需添加報頭中的User-Agent便可實現瀏覽器偽裝。

簡書的請求報文信息

7. 代理服務器

(1)原理

代理服務器原理如下圖,利用代理服務器可以很好處理IP限制問題。

代理服務器原理

個人認為IP限制這一點對爬蟲的影響是很大的,畢竟我們一般不會花錢去購買正規的代理IP,我們一般都是利用互聯網上提供的一些免費代理IP進行爬取,而這些免費IP的質量殘次不齊,出錯是在所難免的,所以在使用之前我們要對其進行有效性測試。

(2)實戰——代理服務器爬取百度首頁

  1. import urllib.requestdef use_proxy(url,proxy_addr,iHeaders,timeoutSec): 
  2.   ''' 
  3.   功能:偽裝成瀏覽器并使用代理IP防屏蔽 
  4.   @url:目標URL 
  5.   @proxy_addr:代理IP地址 
  6.   @iHeaders:瀏覽器頭信息 
  7.   @timeoutSec:超時設置(單位:秒) 
  8.   ''' 
  9.   proxy = urllib.request.ProxyHandler({"http":proxy_addr}) 
  10.   opener = urllib.request.build_opener(proxy,urllib.request.HTTPHandler) 
  11.   urllib.request.install_opener(opener) 
  12.   try: 
  13.       req = urllib.request.Request(url,headers = iHeaders)  #偽裝為瀏覽器并封裝request 
  14.       data = urllib.request.urlopen(req).read().decode("utf-8","ignore")   
  15.   except Exception as er: 
  16.       print("爬取時發生錯誤,具體如下:") 
  17.       print(er) 
  18.   return data     
  19. url = "http://www.baidu.com" 
  20. proxy_addr = "125.94.0.253:8080" 
  21. iHeaders = {"User-Agent":"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.22 Safari/537.36 SE 2.X MetaSr 1.0"} 
  22. timeoutSec = 10 
  23. data = use_proxy(url,proxy_addr,iHeaders,timeoutSec) 
  24. print(len(data)) 

8. 抓包分析

(1)Ajax(異步加載)的技術

網站中用戶需求的數據如聯系人列表,可以從獨立于實際網頁的服務端取得并且可以被動態地寫入網頁中。簡單講就是打開網頁,先展現部分內容,再慢慢加載剩下的內容。顯然,這樣的網頁因為不用一次加載全部內容其加載速度特別快,但對于我們爬蟲的話就比較麻煩了,我們總爬不到我們想要的內容,這時候就需要進行抓包分析。

(2)抓包工具

 

推薦Fiddler與Chrome瀏覽器

(3)實戰

請轉《5.2 爬取基于Ajax技術網頁數據》。

9. 多線程爬蟲

一般我們程序是單線程運行,但多線程可以充分利用資源,優化爬蟲效率。實際上Python 中的多線程并行化并不是真正的并行化,但是多線程在一定程度上還是能提高爬蟲的執行效率,下面我們就針對單線程和多線程進行時間上的比較。

(1)實戰——爬取豆瓣科幻電影網頁

  1. '''多線程'''import urllibfrom multiprocessing.dummy import Poolimport timedef getResponse(url): 
  2.   '''獲取響應信息''' 
  3.   try: 
  4.       req = urllib.request.Request(url) 
  5.       res = urllib.request.urlopen(req) 
  6.   except Exception as er: 
  7.       print("爬取時發生錯誤,具體如下:") 
  8.       print(er) 
  9.   return resdef getURLs(): 
  10.   '''獲取所需爬取的所有URL''' 
  11.   urls = [] 
  12.   for i in range(0, 101,20):#每翻一頁其start值增加20 
  13.       keyword = "科幻" 
  14.       keyword = urllib.request.quote(keyword) 
  15.       newpage = "https://movie.douban.com/tag/"+keyword+"?start="+str(i)+"&type=T
  16.       urls.append(newpage) 
  17.   return urls    def singleTime(urls): 
  18.   '''單進程計時''' 
  19.   timetime1 = time.time() 
  20.   for i in urls: 
  21.       print(i) 
  22.       getResponse(i) 
  23.   timetime2 = time.time() 
  24.   return str(time2 - time1)   def multiTime(urls): 
  25.   '''多進程計時''' 
  26.   pool = Pool(processes=4) #開啟四個進程 
  27.   timetime3 = time.time() 
  28.   pool.map(getResponse,urls) 
  29.   pool.close() 
  30.   pool.join() #等待進程池中的worker進程執行完畢 
  31.   timetime4 = time.time() 
  32.   return str(time4 - time3)    if __name__ == '__main__': 
  33.   urls = getURLs() 
  34.   singleTimesingleTimes = singleTime(urls) #單線程計時   
  35.   multiTimemultiTimes = multiTime(urls) #多線程計時 
  36.   print('單線程耗時 : ' + singleTimes + ' s') 
  37.   print('多線程耗時 : ' + multiTimes + ' s') 

(2)結果:

單線程耗時 : 3.850554943084717 s

多線程耗時 : 1.3288819789886475 s

10. 數據存儲

  • 本地文件(excel、txt)
  • 數據庫(如MySQL)

備注:具體實戰請看5.1

11. 驗證碼處理

在登錄過程中我們常遇到驗證碼問題,此時我們有必要對其進行處理。

(1)簡單驗證碼識別

利用pytesser識別簡單圖形驗證碼,

(2)復雜驗證碼識別

這相對有難度,可以調用第三方接口(如打碼兔)、利用數據挖掘算法如SVM

接下篇文章《一名合格的數據分析師分享Python網絡爬蟲二三事(綜合實戰案例)》

【本文是51CTO專欄機構“豈安科技”的原創文章,轉載請通過微信公眾號(bigsec)聯系原作者】

戳這里,看該作者更多好文

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2017-02-23 18:41:03

數據分析師Python網絡爬蟲

2017-02-23 18:24:14

數據分析師Python網絡爬蟲

2015-08-04 13:25:46

數據分析

2014-06-19 14:00:46

數據分析師

2017-12-11 15:56:44

數據分析師數據倉庫數據源

2017-09-19 13:35:47

數據科學數據分析python

2016-11-11 20:38:39

數據分析師大數據

2012-06-08 10:12:08

架構師

2013-04-11 10:03:55

2015-08-18 13:26:05

數據分析

2012-08-08 09:00:29

數據分析師

2016-10-21 14:41:22

數據分析師大數據

2015-09-30 09:36:58

數據分析師面試offer

2013-07-29 15:58:28

大數據數據分析

2015-04-03 11:19:21

大數據大數據分析師

2017-02-13 19:25:24

2012-08-07 17:32:25

數據分析師

2023-08-25 16:33:10

2020-05-12 10:44:19

數據分析師薪資數據

2023-07-08 23:05:01

數據分析運營
點贊
收藏

51CTO技術棧公眾號

波多野结衣人妻| 精品人妻一区二区三区日产乱码卜| 男人av在线| 日韩黄色片在线观看| 一区二区欧美久久| 国产一区二区在线观看免费视频| 超鹏97在线| 99久久精品情趣| 国产精品99久久久久久白浆小说| 特级西西人体高清大胆| 国产精品国产亚洲精品| 亚洲在线视频网站| 欧美日韩国产综合在线| 亚洲视频在线观看免费视频| 成人在线视频免费观看| 欧美视频第二页| 韩国无码av片在线观看网站| 亚洲精品无遮挡| 日韩av一区二区在线影视| 久久精品国产精品亚洲| 国产精品无码专区| 欧美国产视频| 懂色av影视一区二区三区| 亚洲一区二区三区精品动漫| 国产人妻精品一区二区三区| 精品电影一区| www国产精品视频| 一本加勒比北条麻妃| 国产精品亚洲一区二区在线观看 | 成人精品aaaa网站| 午夜毛片在线观看| 欧美一区视频| 最新中文字幕亚洲| 无码人妻aⅴ一区二区三区| 福利一区和二区| 欧美日韩美女视频| 国产美女主播在线| 成视频免费观看在线看| 久久精品日韩一区二区三区| 91久久中文字幕| 尤物视频免费观看| 免费久久99精品国产自在现线| 久久精品视频va| 日本黄色小视频在线观看| 99精品中文字幕在线不卡| 欧美亚洲国产一区二区三区| 日本天堂免费a| 国产乱色在线观看| 国产精品国产三级国产aⅴ中文| 蜜桃臀一区二区三区| 亚洲va欧美va| 国产成人在线看| 亚洲伊人第一页| 97在线公开视频| 精品一二三四在线| 91久久久久久| 91精品国产乱码久久久| 日本中文在线一区| 国产成人精品网站| 天天操天天干天天摸| 国产精品乱看| 136fldh精品导航福利| 亚洲av鲁丝一区二区三区| 婷婷精品进入| 久久福利网址导航| 久艹视频在线观看| 影音先锋亚洲精品| 97超级碰在线看视频免费在线看| 精品无码久久久久| 亚洲国产高清一区二区三区| 久久中文字幕国产| 欧美人妻一区二区| 亚洲成色精品| 日本高清视频一区| www.久久网| 激情六月婷婷久久| 99爱精品视频| 亚洲av成人精品毛片| 91网站最新网址| 热re99久久精品国99热蜜月| 涩涩视频在线观看免费| 久久免费精品国产久精品久久久久| 精品乱色一区二区中文字幕| 亚洲国产精品国自产拍久久| 国产精品1区2区3区| 国产精品日韩欧美一区二区| 欧美熟妇另类久久久久久不卡| av不卡免费在线观看| 久久综合九色99| 中国日本在线视频中文字幕| 久久久影院官网| 亚洲精品日韩精品| 日本理论片午伦夜理片在线观看| 亚洲成人在线观看视频| 久久久久久久久久久久久国产精品| 国产v综合v| 日韩一区二区三区视频在线| 女人扒开双腿让男人捅| 欧美日韩一区二区三区不卡视频| 亚洲欧洲午夜一线一品| 美女视频久久久| 日韩一级在线| 成人久久久久久| 欧美一区二区三区激情| 国产三级久久久| 国风产精品一区二区| 韩国成人二区| 欧美福利一区二区| 深爱五月激情网| 中文字幕一区二区三三| 欧美在线观看日本一区| 国产精品久久久久久久久毛片| 国产成人亚洲精品青草天美| 激情五月综合色婷婷一区二区| 日韩av资源站| 亚洲资源中文字幕| 手机版av在线| 精品高清久久| 午夜精品一区二区三区av| 在线观看视频二区| 91在线视频免费观看| 在线看视频不卡| 亚洲精品福利电影| 欧美变态凌虐bdsm| 五月天色婷婷丁香| 老司机精品视频网站| 97超级碰碰| 日本欧美在线视频免费观看| 亚洲一区二区3| 午夜大片在线观看| 欧美日韩色图| 热草久综合在线| 懂色av蜜臀av粉嫩av分享吧| 国产亚洲欧美中文| 欧美一区二区三区爽大粗免费| 精品一区二区三区四区五区| 亚洲精品久久久久中文字幕欢迎你 | av资源一区| 日韩欧美的一区二区| 亚洲图片第一页| 久热re这里精品视频在线6| 国产精品国产三级欧美二区| av网在线观看| 日本精品一区二区三区高清| 俄罗斯女人裸体性做爰| 国产精品二区不卡| 国产精品一二三在线| 国产在线观看免费| 色噜噜夜夜夜综合网| 人妻少妇精品视频一区二区三区| 亚洲视频一区| 国产高清一区二区三区| 最新日本在线观看| 日韩限制级电影在线观看| www.97视频| 国产一区二区三区综合| 欧美日韩一级在线| 成人动漫视频在线观看| 久久精品99久久久久久久久| 久久国产视频一区| 国产无人区一区二区三区| 精品人妻一区二区三区四区在线 | 免费黄色在线视频| 裸体一区二区| 婷婷精品国产一区二区三区日韩| 深夜成人影院| 色噜噜亚洲精品中文字幕| 亚洲视频在线免费播放| 中文字幕成人在线观看| 蜜臀av免费观看| 小说区亚洲自拍另类图片专区| 91热福利电影| 爱情岛亚洲播放路线| 亚洲二区在线播放视频| 日本三级小视频| 久久久亚洲精品石原莉奈| 欧美色图色综合| 国产探花一区二区| 国产女同一区二区| 在线黄色网页| 国产视频在线观看一区二区| 亚洲一区 视频| 久久久久久久av麻豆果冻| 中文字幕一区二区三区四区在线视频| 日韩精品一区二区三区免费观看| 国产精品欧美日韩久久| а天堂中文在线官网| 欧美α欧美αv大片| 国产精品久久久久久久妇| 国产片一区二区| 黄色三级视频在线播放| 亚洲三级视频| 亚洲精品9999| 国产伦乱精品| 国产欧美精品va在线观看| av在线下载| 亚洲免费影视第一页| 中文字幕在线观看国产| 一区av在线播放| 久久成人激情视频| 国产精品99久久久久久久女警 | 97超碰最新| 欧美激情喷水| 欧美另类暴力丝袜| 波多野结衣在线网站| 日韩视频免费观看高清完整版在线观看 | 嫩草影视亚洲| 亚洲999一在线观看www| 蜜桃av在线| 欧美精品生活片| 成人高潮成人免费观看| 精品国产免费久久| 亚洲在线免费观看视频| 疯狂蹂躏欧美一区二区精品| 91l九色lporny| 成人一区在线看| 999在线精品视频| 日一区二区三区| 五十路熟女丰满大屁股| 99欧美视频| 日本一区不卡| 亚洲传媒在线| 国内外成人免费视频| 亚洲毛片在线免费| 国产精品吹潮在线观看| 9999热视频在线观看| 日韩中文字幕久久| 婷婷丁香花五月天| 欧美r级电影在线观看| 国产精品露脸视频| 色呦呦网站一区| 日韩视频免费观看高清| 最新中文字幕一区二区三区| 日本黄色免费观看| 成人午夜电影网站| 国产麻豆剧传媒精品国产| 麻豆成人久久精品二区三区小说| 国产乱子夫妻xx黑人xyx真爽| 欧美欧美全黄| 久久久久久久香蕉| 欧美日韩久久| 国产手机视频在线观看| av影片在线一区| 欧美在线播放一区| 欧洲精品一区| 国精产品99永久一区一区| 日韩中文字幕| 成人区精品一区二区| 成人自拍视频| 99re在线观看视频| 国产毛片久久久| 九九九九精品| 欧美日韩另类图片| 欧美视频观看一区| 精品国产成人| 亚洲午夜激情| 婷婷综合社区| 免费的av在线| 在线成人国产| 啊啊啊一区二区| 久久久综合网| 伊人影院综合在线| 国产一区久久久| 中文字幕人妻一区| 99久久精品国产麻豆演员表| 香蕉久久久久久av成人| 成熟亚洲日本毛茸茸凸凹| 国产艳妇疯狂做爰视频| 成人性色生活片| 免费a级黄色片| 欧美国产日韩a欧美在线观看| 亚洲图片另类小说| 国产精品久线观看视频| 夫妻性生活毛片| 亚洲影视在线观看| 欧美特黄aaaaaa| 欧美片在线播放| 亚洲精品久久久久久久久久| 日韩精品一区二区三区视频播放| 老司机午夜福利视频| 日韩激情视频在线播放| 国产在线色视频| 久久亚洲私人国产精品va| 国产丝袜在线播放| 国产成人精品优优av| 农村妇女一区二区| 国产精品久久亚洲7777| 中文字幕伦av一区二区邻居| 免费日韩av电影| 国产精品久久久久久久久久10秀| 成人一区二区av| 欧美综合二区| 色男人天堂av| 91老师片黄在线观看| 久久午夜精品视频| 亚洲午夜精品一区二区三区他趣| 欧美精品韩国精品| 91精品免费在线观看| 天天爱天天干天天操| 在线视频精品一| 成人三级小说| 91精品久久久久久久久久久久久久| 日韩区欧美区| 亚洲精品成人自拍| 国产视频一区免费看| 999在线观看| 97精品久久久午夜一区二区三区| 自拍偷拍第9页| 欧美日韩一区二区在线播放| 亚洲精品国产精品乱码视色| 91精品国产一区二区三区蜜臀| 四虎在线视频| 欧美成人午夜视频| jizzjizz少妇亚洲水多| 国产高清一区二区三区| 日韩精品网站| 亚洲熟妇av一区二区三区| 国产精品一区三区| 少妇的滋味中文字幕bd| 精品国产乱码久久久久酒店 | 干b视频在线观看| 亚洲v日本v欧美v久久精品| 一级片免费网站| 亚洲图片在线综合| 少妇淫片在线影院| 国产精品区一区| 韩国自拍一区| 伊人五月天婷婷| 日韩久久一区二区| 亚洲天堂网视频| 日日摸夜夜添一区| 主播大秀视频在线观看一区二区| 狠狠色综合色区| 亚洲经典在线| 国产情侣久久久久aⅴ免费| 亚洲男人的天堂在线观看| 在线播放亚洲精品| 夜夜嗨av一区二区三区免费区| 欧洲一区精品| 精品毛片久久久久久| 国自产拍偷拍福利精品免费一 | 国产在线播放一区| 99成人在线观看| 欧美日韩你懂得| 免费av在线播放| 国产欧美日韩免费| 色天天综合网| 国产永久免费网站| 亚洲欧美另类久久久精品| 国产精品久久久久毛片| 中文字幕久久久| 国产精品亚洲成在人线| 特级西西444www大精品视频| 亚洲乱码久久| 欧亚乱熟女一区二区在线| 亚洲成年人影院| 少妇人妻偷人精品一区二区| 欧美成人全部免费| 国内精品偷拍| 日韩免费一级视频| 久久亚洲精精品中文字幕早川悠里| 成年人视频在线免费看| 亚洲欧美另类在线观看| 成人视屏在线观看| 台湾成人av| 国产精品一区二区在线播放| 久草手机视频在线观看| 欧美精品色一区二区三区| 美女av在线播放| 国产99午夜精品一区二区三区 | 91精品久久久久久综合五月天| 99久热在线精品视频| 成人一区二区三区| 日韩欧美三级视频| 国产亚洲欧洲高清一区| 丰满少妇一区| 99中文字幕在线观看| 国产成人aaa| 九一国产在线观看| 在线观看视频亚洲| 麻豆国产一区| 自慰无码一区二区三区| 久久久久久**毛片大全| 中文字幕一区二区人妻痴汉电车| 久久精品久久久久久国产 免费| 国产一区二区av在线| 日韩黄色短视频| 久久久国产精品午夜一区ai换脸| 亚洲性猛交富婆| 久久久久久com| 精品视频免费在线观看| 亚洲天堂一区二区在线观看| 亚洲精品视频在线| 男女污视频在线观看| 成人女保姆的销魂服务| 欧美日韩一区二区三区四区在线观看 | 福利所第一导航| 日韩二区三区在线| 国产精品99久久免费| 少妇无码av无码专区在线观看 |