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

手把手教你用Scrapy爬蟲框架爬取食品論壇數據并存入數據庫

安全 應用安全
大家好,我是杯酒先生,這是我第一次寫這種分享項目的文章,可能很水,很不全面,而且肯定存在說錯的地方,希望大家可以評論里加以指點,不勝感激!

[[397000]]

大家好,我是杯酒先生,這是我第一次寫這種分享項目的文章,可能很水,很不全面,而且肯定存在說錯的地方,希望大家可以評論里加以指點,不勝感激!

一、前言

網絡爬蟲(又稱為網頁蜘蛛,網絡機器人),是一種按照一定的規則,自動地抓取萬維網信息的程序或者腳本。另外一些不常使用的名字還有螞蟻、自動索引、模擬程序或者蠕蟲。------百度百科

說人話就是,爬蟲是用來海量規則化獲取數據,然后進行處理和運用,在大數據、金融、機器學習等等方面都是必須的支撐條件之一。

目前在一線城市中,爬蟲的崗位薪資待遇都是比較客觀的,之后提升到中、高級爬蟲工程師,數據分析師、大數據開發崗位等,都是很好的過渡。

二、項目目標

本此介紹的項目其實不用想的太過復雜,最終要實現的目標也就是將帖子的每條評論爬取到數據庫中,并且做到可以更新數據,防止重復爬取,反爬等措施。

三、項目準備

這部分主要是介紹本文需要用到的工具,涉及的庫,網頁等信息等

軟件:PyCharm

需要的庫:Scrapy, selenium, pymongo, user_agent,datetime

目標網站:

  1. http://bbs.foodmate.net 

插件:chromedriver(版本要對)

四、項目分析

1、確定爬取網站的結構

簡而言之:確定網站的加載方式,怎樣才能正確的一級一級的進入到帖子中抓取數據,使用什么格式保存數據等。

其次,觀察網站的層級結構,也就是說,怎么根據板塊,一點點進入到帖子頁面中,這對本次爬蟲任務非常重要,也是主要編寫代碼的部分。

2、如何選擇合適的方式爬取數據?

目前我知道的爬蟲方法大概有如下(不全,但是比較常用):

1)request框架:運用這個http庫可以很靈活的爬取需要的數據,簡單但是過程稍微繁瑣,并且可以配合抓包工具對數據進行獲取。但是需要確定headers頭以及相應的請求參數,否則無法獲取數據;很多app爬取、圖片視頻爬取隨爬隨停,比較輕量靈活,并且高并發與分布式部署也非常靈活,對于功能可以更好實現。

2)scrapy框架:scrapy框架可以說是爬蟲最常用,最好用的爬蟲框架了,優點很多:scrapy 是異步的;采取可讀性更強的 xpath 代替正則;強大的統計和 log 系統;同時在不同的 url 上爬行;支持 shell 方式,方便獨立調試;支持寫 middleware方便寫一些統一的過濾器;可以通過管道的方式存入數據庫等等。這也是本次文章所要介紹的框架(結合selenium庫)。

五、項目實現

1、第一步:確定網站類型

首先解釋一下是什么意思,看什么網站,首先要看網站的加載方式,是靜態加載,還是動態加載(js加載),還是別的方式;根據不一樣的加載方式需要不同的辦法應對。然后我們觀察今天爬取的網站,發現這是一個有年代感的論壇,首先猜測是靜態加載的網站;我們開啟組織 js 加載的插件,如下圖所示。

刷新之后發現確實是靜態網站(如果可以正常加載基本都是靜態加載的)。

2、第二步:確定層級關系

其次,我們今天要爬取的網站是食品論壇網站,是靜態加載的網站,在之前分析的時候已經了解了,然后是層級結構:

大概是上面的流程,總共有三級遞進訪問,之后到達帖子頁面,如下圖所示。

部分代碼展示:

一級界面:

  1. def parse(self, response): 
  2.     self.logger.info("已進入網頁!"
  3.     self.logger.info("正在獲取版塊列表!"
  4.     column_path_list = response.css('#ct > div.mn > div:nth-child(2) > div')[:-1] 
  5.     for column_path in column_path_list: 
  6.         col_paths = column_path.css('div > table > tbody > tr > td > div > a').xpath('@href').extract() 
  7.         for path in col_paths: 
  8.             block_url = response.urljoin(path) 
  9.             yield scrapy.Request( 
  10.                 url=block_url, 
  11.                 callback=self.get_next_path, 
  12.             ) 

二級界面:

  1. def get_next_path(self, response): 
  2.     self.logger.info("已進入版塊!"
  3.     self.logger.info("正在獲取文章列表!"
  4.     if response.url == 'http://www.foodmate.net/know/'
  5.         pass 
  6.     else
  7.         try: 
  8.             nums = response.css('#fd_page_bottom > div > label > span::text').extract_first().split(' ')[-2] 
  9.         except
  10.             nums = 1 
  11.         for num in range(1, int(nums) + 1): 
  12.             tbody_list = response.css('#threadlisttableid > tbody'
  13.             for tbody in tbody_list: 
  14.                 if 'normalthread' in str(tbody): 
  15.                     item = LunTanItem() 
  16.                     item['article_url'] = response.urljoin( 
  17.                         tbody.css('* > tr > th > a.s.xst').xpath('@href').extract_first()) 
  18.                     item['type'] = response.css( 
  19.                         '#ct > div > div.bm.bml.pbn > div.bm_h.cl > h1 > a::text').extract_first() 
  20.                     item['title'] = tbody.css('* > tr > th > a.s.xst::text').extract_first() 
  21.                     item['spider_type'] = "論壇" 
  22.                     item['source'] = "食品論壇" 
  23.                     if item['article_url'] != 'http://bbs.foodmate.net/'
  24.                         yield scrapy.Request( 
  25.                             url=item['article_url'], 
  26.                             callback=self.get_data, 
  27.                             meta={'item': item, 'content_info': []} 
  28.                         ) 
  29.         try: 
  30.             callback_url = response.css('#fd_page_bottom > div > a.nxt').xpath('@href').extract_first() 
  31.             callback_url = response.urljoin(callback_url) 
  32.             yield scrapy.Request( 
  33.                 url=callback_url, 
  34.                 callback=self.get_next_path, 
  35.             ) 
  36.         except IndexError: 
  37.             pass 

三級界面:

  1. def get_data(self, response): 
  2.     self.logger.info("正在爬取論壇數據!"
  3.     item = response.meta['item'
  4.     content_list = [] 
  5.     divs = response.xpath('//*[@id="postlist"]/div'
  6.     user_name = response.css('div > div.pi > div:nth-child(1) > a::text').extract() 
  7.     publish_time = response.css('div.authi > em::text').extract() 
  8.     floor = divs.css('* strong> a> em::text').extract() 
  9.     s_id = divs.xpath('@id').extract() 
  10.     for i in range(len(divs) - 1): 
  11.         content = '' 
  12.         try: 
  13.  
  14.             strong = response.css('#postmessage_' + s_id[i].split('_')[-1] + '').xpath('string(.)').extract() 
  15.             for s in strong: 
  16.                 content += s.split(';')[-1].lstrip('\r\n'
  17.             datas = dict(content=content,  # 內容 
  18.                          reply_id=0,  # 回復的樓層,默認0 
  19.                          user_name=user_name[i],  # ⽤戶名 
  20.                          publish_time=publish_time[i].split('于 ')[-1],  # %Y-%m-%d %H:%M:%S' 
  21.                          id='#' + floor[i],  # 樓層 
  22.                          ) 
  23.             content_list.append(datas) 
  24.         except IndexError: 
  25.             pass 
  26.     item['content_info'] = response.meta['content_info'
  27.     item['scrawl_time'] = datetime.now().strftime('%Y-%m-%d %H:%M:%S'
  28.     item['content_info'] += content_list 
  29.  
  30.     data_url = response.css('#ct > div.pgbtn > a').xpath('@href').extract_first() 
  31.     if data_url != None: 
  32.         data_url = response.urljoin(data_url) 
  33.         yield scrapy.Request( 
  34.             url=data_url, 
  35.             callback=self.get_data, 
  36.             meta={'item': item, 'content_info': item['content_info']} 
  37.         ) 
  38.     else
  39.         item['scrawl_time'] = datetime.now().strftime('%Y-%m-%d %H:%M:%S'
  40.         self.logger.info("正在存儲!"
  41.         print('儲存成功'
  42.         yield item 

3、第三步:確定爬取方法

由于是靜態網頁,首先決定采用的是scrapy框架直接獲取數據,并且通過前期測試發現方法確實可行,不過當時年少輕狂,小看了網站的保護措施,由于耐心有限,沒有加上定時器限制爬取速度,導致我被網站加了限制,并且網站由靜態加載網頁變為:動態加載網頁驗證算法之后再進入到該網頁,直接訪問會被后臺拒絕。

但是這種問題怎么會難道我這小聰明,經過我短暫地思考(1天),我將方案改為scrapy框架 + selenium庫的方法,通過調用chromedriver,模擬訪問網站,等網站加載完了再爬取不就完了,后續證明這個方法確實可行,并且效率也不錯。

實現部分代碼如下:

  1. def process_request(self, request, spider): 
  2.     chrome_options = Options() 
  3.     chrome_options.add_argument('--headless')  # 使用無頭谷歌瀏覽器模式 
  4.     chrome_options.add_argument('--disable-gpu'
  5.     chrome_options.add_argument('--no-sandbox'
  6.     # 指定谷歌瀏覽器路徑 
  7.     self.driver = webdriver.Chrome(chrome_options=chrome_options, 
  8.                                    executable_path='E:/pycharm/workspace/爬蟲/scrapy/chromedriver'
  9.     if request.url != 'http://bbs.foodmate.net/'
  10.         self.driver.get(request.url) 
  11.         html = self.driver.page_source 
  12.         time.sleep(1) 
  13.         self.driver.quit() 
  14.         return scrapy.http.HtmlResponse(url=request.url, body=html.encode('utf-8'), encoding='utf-8'
  15.                                         request=request) 

4、第四步:確定爬取數據的儲存格式

這部分不用多說,根據自己需求,將需要爬取的數據格式設置在items.py中。在工程中引用該格式保存即可:

  1. class LunTanItem(scrapy.Item): 
  2.     ""
  3.         論壇字段 
  4.     ""
  5.     title = Field()  # str: 字符類型 | 論壇標題 
  6.     content_info = Field()  # str: list類型 | 類型list: [LunTanContentInfoItem1, LunTanContentInfoItem2] 
  7.     article_url = Field()  # str: url | 文章鏈接 
  8.     scrawl_time = Field()  # str: 時間格式 參照如下格式 2019-08-01 10:20:00 | 數據爬取時間 
  9.     source = Field()  # str: 字符類型 | 論壇名稱 eg: 未名BBS, 水木社區, 天涯論壇 
  10.     type = Field()  # str: 字符類型 | 板塊類型 eg: '財經''體育''社會' 
  11.     spider_type = Field()  # str: forum | 只能寫 'forum' 

5、第五步:確定保存數據庫

本次項目選擇保存的數據庫為mongodb,由于是非關系型數據庫,優點顯而易見,對格式要求沒有那么高,可以靈活儲存多維數據,一般是爬蟲優選數據庫(不要和我說redis,會了我也用,主要是不會)

代碼:

  1. import pymongo 
  2.  
  3. class FMPipeline(): 
  4.     def __init__(self): 
  5.         super(FMPipeline, self).__init__() 
  6.         # client = pymongo.MongoClient('139.217.92.75'
  7.         client = pymongo.MongoClient('localhost'
  8.         db = client.scrapy_FM 
  9.         self.collection = db.FM 
  10.  
  11.     def process_item(self, item, spider): 
  12.         query = { 
  13.             'article_url': item['article_url'
  14.         } 
  15.         self.collection.update_one(query, {"$set": dict(item)}, upsert=True
  16.         return item 

這時,有聰明的盆友就會問:如果運行兩次爬取到了一樣的數據怎么辦呢?(換句話說就是查重功能)

這個問題之前我也沒有考慮,后來在我詢問大佬的過程中知道了,在我們存數據的時候就已經做完這件事了,就是這句:

  1. query = { 
  2.     'article_url': item['article_url'
  3. self.collection.update_one(query, {"$set": dict(item)}, upsert=True

通過帖子的鏈接確定是否有數據爬取重復,如果重復可以理解為將其覆蓋,這樣也可以做到更新數據。

6、其他設置

像多線程、headers頭,管道傳輸順序等問題,都在settings.py文件中設置,具體可以參考小編的項目去看,這里不再贅述。

七、效果展示

1、點擊運行,結果顯示在控制臺,如下圖所示。

2、中間會一直向隊列中堆很多帖子的爬取任務,然后多線程處理,我設置的是16線程,速度還是很可觀的。

3、數據庫數據展示:

content_info中存放著每個帖子的全部留言以及相關用戶的公開信息。

八、總結

1、這篇文章主要給大家介紹了食品網站的數據采集和存儲過程,詳解了如何分析網頁結構、爬蟲策略、網站類型、層級關系、爬蟲方法和數據存儲過程,最終實現將帖子的每條評論爬取到數據庫中,并且做到可以更新數據,防止重復爬取,反爬等,干貨滿滿。

2、本次項目總的來說,不是特別難搞,只要思路對了,找到了數據規則,爬起來可以說易如反掌,覺得難只是之前沒有完整走過流程,有了這次比較水的介紹,希望能對你有所幫助,那將是我最大的榮幸。

3、遇到問題首先想的不是問同事,朋友,老師,而是去谷歌,百度,看有沒有相似的情況,看別人的經歷,一定要學會自己發現問題,思考問題,解決問題,這對于之后工作有非常大的幫助(我之前就被說過還沒有脫離學生時代,就是我喜歡問同事),等網上查詢了一定資料了,還是沒有頭緒,再去問別人,別人也會比較愿意幫助你的~

我是杯酒先生,最后分享我的座右銘給大家:保持獨立思考,不卑不亢不慫。

最后需要本文項目代碼的小伙伴,請在公眾號后臺回復“食品論壇”關鍵字進行獲取,如果在運行過程中有遇到任何問題,請隨時留言或者加小編好友,小編看到會幫助大家解決bug噢!

 

責任編輯:武曉燕 來源: Python爬蟲與數據挖掘
相關推薦

2020-03-08 22:06:16

Python數據IP

2021-01-30 10:37:18

ScrapyGerapy網絡爬蟲

2021-05-10 06:48:11

Python騰訊招聘

2021-05-08 08:04:05

Python爬取素材

2021-08-09 13:31:25

PythonExcel代碼

2020-11-27 07:38:43

MongoDB

2023-09-21 22:08:01

2022-10-19 14:30:59

2018-05-16 13:50:30

Python網絡爬蟲Scrapy

2020-12-17 09:40:01

Matplotlib數據可視化命令

2022-04-01 20:29:26

Pandas數據存儲

2021-02-04 09:00:57

SQLDjango原生

2011-03-28 16:14:38

jQuery

2021-02-06 14:55:05

大數據pandas數據分析

2022-08-04 10:39:23

Jenkins集成CD

2021-02-17 09:23:31

Python百度搜索

2009-04-22 09:17:19

LINQSQL基礎

2021-04-01 09:02:38

Python小說下載網絡爬蟲

2021-08-26 09:00:48

PyechartsPython可視化

2021-01-08 10:32:24

Charts折線圖數據可視化
點贊
收藏

51CTO技術棧公眾號

中文在线一区二区| 9国产精品视频| 日韩一区二区三区免费看 | 国产精品亚洲二区| 欧美欧美欧美欧美首页| www.好吊操| 国产福利电影在线| 国产91丝袜在线播放0| 欧美自拍视频在线观看| 亚洲二区在线播放| 亚洲免费专区| 欧美一级淫片007| 蜜臀视频一区二区三区| 欧洲一区二区三区| 国产精品国产三级国产有无不卡| 国产欧美日韩一区| 国产精品自拍电影| 日韩福利视频网| 欧美极品少妇xxxxⅹ裸体艺术 | 亚洲欧美日韩电影| 欧洲亚洲一区二区| 日韩在线观看视频一区二区三区| 久久精品二区亚洲w码| 欧美激情精品久久久久久大尺度| 久久成人激情视频| 久久夜色电影| 日韩欧美中文字幕制服| 天天色综合社区| 亚洲最大网站| 亚洲成年人网站在线观看| 中文字幕在线亚洲精品| 浮生影视网在线观看免费| av资源站一区| 97久久夜色精品国产九色| 中文字幕av在线免费观看| 日韩香蕉视频| 久久久在线免费观看| 韩国一级黄色录像| 日韩精品第一区| 亚洲天堂av女优| 色噜噜日韩精品欧美一区二区| 极品一区美女高清| 欧美精品一区二区三区很污很色的| 加勒比av中文字幕| 在线免费观看亚洲| 欧美日韩成人综合| 亚洲免费av一区| 狂野欧美性猛交xxxx| 在线观看视频一区二区欧美日韩| 日韩欧美高清dvd碟片| 亚洲最大的av网站| 国产精品久久久久久久久毛片| 日韩成人午夜精品| 国产精品美女www爽爽爽视频| 99re国产在线| 日韩成人dvd| 国产精品亚洲激情| 一卡二卡在线视频| 国产一区二区在线视频| 91亚洲国产成人精品性色| 99热这里精品| 国产91精品在线观看| 97av自拍| 午夜视频福利在线| 久久免费看少妇高潮| 热舞福利精品大尺度视频| 国产视频二区在线观看| 欧美激情综合五月色丁香小说| 日本一区视频在线播放| 日本在线免费| 樱花草国产18久久久久| 欧美成人高潮一二区在线看| 自拍网站在线观看| 在线观看网站黄不卡| 久久久久xxxx| 午夜视频一区二区在线观看| 亚洲国产中文字幕久久网| 国产传媒第一页| 超碰成人久久| 久久成人精品电影| 国产成人愉拍精品久久| 日韩成人免费电影| 91手机在线观看| 日韩美女一级视频| 国产精品初高中害羞小美女文| 日韩中文在线字幕| 午夜伦理福利在线| 欧美日韩精品免费| 在线视频 日韩| 青青草国产免费一区二区下载| 久久伊人精品天天| 日韩精品在线免费视频| 美日韩一区二区三区| 国产精品手机在线| 国产69精品久久app免费版| 亚洲精品亚洲人成人网| 三上悠亚久久精品| 黄色日韩网站| 精品视频www| 中文字幕在线观看成人| 国产亚洲精品v| 成人免费网站在线看| 免费在线高清av| 亚洲狼人国产精品| 91激情视频在线| 91蜜桃臀久久一区二区| 中文字幕av一区二区三区谷原希美| 久久亚洲成人av| 久久91精品久久久久久秒播| 国内精品视频在线播放| 中文字幕在线观看播放| 欧美伊人久久久久久久久影院| 无码国产精品一区二区免费式直播| 青青草原综合久久大伊人精品| 5278欧美一区二区三区| www.av黄色| 中文字幕中文字幕中文字幕亚洲无线| 日韩精品视频在线观看视频 | 欧美视频免费在线观看| 小日子的在线观看免费第8集| 一区二区三区日本久久久 | 亚洲一区二区在线免费观看| 韩国在线一区| 亚洲国产精品久久人人爱 | av伦理在线| 欧美日韩国产精选| 自拍偷拍亚洲天堂| 亚洲精选一区| 成人在线视频网址| 亚洲精品一线| 日韩一二三区不卡| 99鲁鲁精品一区二区三区| 日韩影院免费视频| 欧美理论一区二区| 亚洲伊人av| 精品视频www| 在线观看黄网站| 99国产精品久久久久久久久久 | 欧美一区二区三区白人 | 夜夜操天天操亚洲| aaa一级黄色片| 99精品网站| 国产一区二区香蕉| 麻豆视频免费在线观看| 欧美日韩免费观看一区二区三区 | 日韩免费不卡av| 午夜福利视频一区二区| 亚洲成人精品一区二区| 日本50路肥熟bbw| 亚洲一级二级| 精品视频在线观看| 手机av在线| 精品亚洲aⅴ在线观看| 国产专区第一页| 国产视频一区二区在线观看| 动漫av免费观看| 成人影院在线| 成人激情av在线| bt在线麻豆视频| 欧美成人猛片aaaaaaa| 国产精彩视频在线观看| 99精品在线免费| 大肉大捧一进一出好爽动态图| 国产成人1区| 国产精品亚洲网站| 18视频在线观看| 精品成人佐山爱一区二区| 久久国产精品免费看| 久久综合九色综合欧美就去吻| av网站在线观看不卡| 人人狠狠综合久久亚洲婷| 成人性教育视频在线观看| 午夜羞羞小视频在线观看| 精品福利一区二区三区 | 极品在线视频| 亚洲区在线播放| 国产精品视频第一页| 亚洲大片免费看| 国产精品久久久久无码av色戒| 免费成人av在线| 九一免费在线观看| 欧美色图婷婷| 国产欧美精品一区二区三区-老狼| 二区在线播放| 亚洲乱码一区二区| 91久久国语露脸精品国产高跟| 亚洲成人资源网| 貂蝉被到爽流白浆在线观看| 福利电影一区二区| 精品久久久噜噜噜噜久久图片| 91视频综合| 久久福利电影| 99tv成人影院| 日本欧美黄网站| 羞羞污视频在线观看| 亚洲人成电影在线| wwwav在线播放| 欧美在线free| 日本少妇做爰全过程毛片| 国产精品福利一区二区| 最新在线黄色网址| 国产精品99久| 一区二区三区入口| 国产欧美二区| 好吊色视频988gao在线观看| 欧美精品羞羞答答| 极品尤物一区二区三区| 高清一区二区中文字幕| 国产精品久久久av| 亚洲风情在线资源| 欧美国产乱视频| 色大18成网站www在线观看| 亚洲国产黄色片| 精品毛片一区二区三区| 欧美亚洲一区三区| 一级做a爰片久久毛片| 亚洲一区在线观看免费 | 91久久久在线| 亚洲成人激情社区| 91精品国产91久久久久久不卡| 性直播体位视频在线观看| 中文字幕不卡av| 大地资源中文在线观看免费版| 亚洲大胆人体在线| 丰满人妻一区二区三区免费视频| 欧美日韩日本视频| 久久久久久无码精品大片| 欧美日韩国产一区中文午夜| 黄色一级视频免费| 亚洲女人的天堂| 少妇高潮在线观看| 国产精品日韩成人| 精品无码人妻一区二区免费蜜桃| 91影院在线观看| 亚洲观看黄色网| 成人avav在线| 久久免费精品国产| 成人永久免费视频| 无码人妻一区二区三区一| 国产一区免费电影| 中文字幕avav| 国产福利精品一区| 337p日本欧洲亚洲大胆张筱雨| 国产精品99久久久久久久vr | 伊人久久影院| 91香蕉视频在线下载| 玖玖玖电影综合影院| 91精品视频网站| 在线不卡一区| 亚洲综合小说区| 欧美专区一区| 国产日韩精品推荐| 综合色就爱涩涩涩综合婷婷| 欧美日韩一区二| 不卡在线一区| 黄色网zhan| 在线看片日韩| 国产亚洲天堂网| 日韩国产高清在线| theporn国产精品| 国产成人精品免费一区二区| 欧美激情一区二区三区p站| 91在线丨porny丨国产| 永久免费看mv网站入口78| 国产欧美视频在线观看| 色哟哟一一国产精品| 一区二区三区中文免费| 国产做受高潮漫动| 日本韩国欧美一区| 国产伦理一区二区| 亚洲福利视频网| 国产在线观看黄| 久久躁日日躁aaaaxxxx| 春色校园综合激情亚洲| 日韩免费在线视频| 国产高清精品二区| 九九九九九九精品| 久久美女精品| 国产乱子伦精品无码专区| 久久九九免费| 手机在线观看日韩av| 9人人澡人人爽人人精品| 国产精品美女高潮无套| 一区二区在线电影| 丰满少妇xoxoxo视频| 欧美精品粉嫩高潮一区二区| 蜜臀av在线观看| 中文字幕在线成人| а√在线中文网新版地址在线| 国产精品九九久久久久久久| 国产亚洲字幕| 日韩av在线一区二区三区| 亚洲成av人片一区二区密柚| 波多野结衣50连登视频| 国产综合色视频| 少妇光屁股影院| 亚洲精品美国一| 亚洲av无码不卡| 亚洲国产精品资源| 成人三级网址| 国产精品极品尤物在线观看| 6080成人| 正在播放精油久久| 校园激情久久| 又黄又色的网站| 中文字幕制服丝袜成人av| 日产精品久久久| 精品女同一区二区| 午夜不卡视频| 欧美中在线观看| www.亚洲一二| 四虎影院一区二区| 久久中文精品| 国产精品麻豆入口| 亚洲精品成a人| 一级淫片免费看| 一本一本久久a久久精品牛牛影视| 91九色在线看| 成人免费视频网站入口| 91不卡在线观看| 性猛交ⅹ×××乱大交| 久久先锋资源网| 精品美女久久久久| 精品国产免费人成在线观看| h视频在线免费观看| 成人久久18免费网站图片| 精品国产一区二区三区四区| 六月丁香婷婷在线| youjizz久久| 久久久久久久伊人| 欧美mv和日韩mv国产网站| 国产乱色在线观看| 成人写真视频福利网| 久久福利综合| 57pao国产成永久免费视频| 中文字幕电影一区| 中文字幕久久熟女蜜桃| 亚洲性生活视频在线观看| 欧美电影免费观看高清完整| 久久久久久a亚洲欧洲aⅴ| 中文日韩在线| www.免费av| 色综合久久久久久久久| 三级理论午夜在线观看| 欧美一区二区.| 九九精品在线| 中文字幕视频在线免费观看| 亚洲国产激情av| 亚洲综合网av| 久久人体大胆视频| 韩国三级成人在线| 黄网站色视频免费观看| 懂色av一区二区三区免费看| 久久av高潮av无码av喷吹| 欧美成人在线直播| 91九色国产在线播放| 精品无码久久久久久久动漫| 国产精品久久久久9999高清| 性少妇bbw张开| 在线观看视频一区二区 | 亚洲欧美一区二区三区国产精品| 国产精品国产三级国产普通话对白| 久久精品国产精品| 麻豆精品在线| 日本a视频在线观看| 91麻豆swag| 中文字幕 国产| 欧美成人国产va精品日本一级| 涩爱av色老久久精品偷偷鲁| 国产老熟妇精品观看| 久久婷婷综合激情| 亚洲综合免费视频| 久久久噜久噜久久综合| 网友自拍一区| 九一精品久久久| 亚洲一区二区三区中文字幕| 亚州男人的天堂| 国产精品自拍视频| 欧美午夜不卡影院在线观看完整版免费 | 77thz桃花论族在线观看| 免费精品视频一区| 韩国av一区二区三区在线观看| 精品肉丝脚一区二区三区| 亚洲欧美国产精品专区久久| 亚洲网站免费| av免费观看网| 国产精品久久久久影院色老大| 亚洲av无码乱码国产精品久久 | 玖玖精品在线视频| 97久久超碰国产精品电影| 欧美 亚洲 另类 激情 另类| 欧美日韩国产成人高清视频| 亚洲美女久久| 男人操女人下面视频| 日本久久精品电影| 毛片大全在线观看| 日本成人黄色免费看| 国产精品一区二区视频| 久久久精品毛片| 欧美国产日韩视频|