亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識(shí)庫 > Python爬蟲之教你利用Scrapy爬取圖片

Python爬蟲之教你利用Scrapy爬取圖片

熱門標(biāo)簽:京華圖書館地圖標(biāo)注 電話機(jī)器人貸款詐騙 看懂地圖標(biāo)注方法 廣東旅游地圖標(biāo)注 蘇州人工外呼系統(tǒng)軟件 淮安呼叫中心外呼系統(tǒng)如何 佛山通用400電話申請(qǐng) 電話外呼系統(tǒng)招商代理 打印谷歌地圖標(biāo)注

Scrapy下載圖片項(xiàng)目介紹

Scrapy是一個(gè)適用爬取網(wǎng)站數(shù)據(jù)、提取結(jié)構(gòu)性數(shù)據(jù)的應(yīng)用程序框架,它可以通過定制化的修改來滿足不同的爬蟲需求。

使用Scrapy下載圖片

項(xiàng)目創(chuàng)建

首先在終端創(chuàng)建項(xiàng)目

# win4000為項(xiàng)目名
$ scrapy startproject  win4000

該命令將創(chuàng)建下述項(xiàng)目目錄。

項(xiàng)目預(yù)覽

查看項(xiàng)目目錄

  • win4000
  • win4000
  • spiders
  • __init__.py
  • __init__.py
  • items.py
  • middlewares.py
  • pipelines.py
  • settings.py
  • scrapy.cfg

創(chuàng)建爬蟲文件

進(jìn)入spiders文件夾,根據(jù)模板文件創(chuàng)建爬蟲文件

$ cd win4000/win4000/spiders
# pictures 為 爬蟲名
$ scrapy genspider pictures "win4000.com"

項(xiàng)目組件介紹

1.引擎(Scrapy):核心組件,處理系統(tǒng)的數(shù)據(jù)流處理,觸發(fā)事務(wù)。

2.調(diào)度器(Scheduler):用來接受引擎發(fā)出的請(qǐng)求, 壓入隊(duì)列中, 并在引擎再次請(qǐng)求的時(shí)候返回。由URL組成的優(yōu)先隊(duì)列, 由它來決定下一個(gè)要抓取的網(wǎng)址是什么,同時(shí)去除重復(fù)的網(wǎng)址。

3.下載器(Downloader):用于下載網(wǎng)頁內(nèi)容, 并將網(wǎng)頁內(nèi)容返回給Spiders。

4.爬蟲(Spiders):用于從特定的網(wǎng)頁中提取自己需要的信息, 并用于構(gòu)建實(shí)體(Item),也可以從中提取出鏈接,讓Scrapy繼續(xù)抓取下一個(gè)頁面

5.管道(Pipeline):負(fù)責(zé)處理Spiders從網(wǎng)頁中抽取的實(shí)體,主要的功能是持久化實(shí)體、驗(yàn)證實(shí)體的有效性、清除不需要的信息。當(dāng)頁面被Spiders解析后,將被發(fā)送到項(xiàng)目管道。

6.下載器中間件(Downloader Middlewares):位于Scrapy引擎和下載器之間的框架,主要是處理Scrapy引擎與下載器之間的請(qǐng)求及響應(yīng)。

7.爬蟲中間件(Spider Middlewares):介于Scrapy引擎和爬蟲之間的框架,主要工作是處理Spiders的響應(yīng)輸入和請(qǐng)求輸出。

8.調(diào)度中間件(Scheduler Middewares):介于Scrapy引擎和調(diào)度之間的中間件,從Scrapy引擎發(fā)送到調(diào)度的請(qǐng)求和響應(yīng)。

Scrapy爬蟲流程介紹

Scrapy基本爬取流程可以描述為UR2IM(URL-Request-Response-Item-More URL):

1.引擎從調(diào)度器中取出一個(gè)鏈接(URL)用于接下來的抓取;

2.引擎把URL封裝成一個(gè)請(qǐng)求(Request)傳給下載器;

3.下載器把資源下載下來,并封裝成應(yīng)答包(Response);

4.爬蟲解析Response;

5.解析出實(shí)體(Item),則交給實(shí)體管道進(jìn)行進(jìn)一步的處理;

6.解析出的是鏈接(URL),則把URL交給調(diào)度器等待抓取。

頁面結(jié)構(gòu)分析

首先查看目標(biāo)頁面,可以看到包含多個(gè)主題,選取感興趣主題,本項(xiàng)目以“風(fēng)景”為例(作為練習(xí),也可以通過簡(jiǎn)單修改,來爬取所有模塊內(nèi)圖片)。

在“風(fēng)景”分類頁面,可以看到每頁包含多個(gè)專題,利用開發(fā)者工具,可以查看每個(gè)專題的URL,拷貝相應(yīng)XPath,利用Xpath的規(guī)律性,構(gòu)建循環(huán),用于爬取每個(gè)專題內(nèi)容。

# 查看不同專題的XPath
# /html/body/div[3]/div/div[3]/div[1]/div[1]/div[2]/div/div/ul/li[1]/a
# /html/body/div[3]/div/div[3]/div[1]/div[1]/div[2]/div/div/ul/li[2]/a

利用上述結(jié)果,可以看到li[index]中index為專題序列。因此可以構(gòu)建Xpath列表如下:

item_selector = response.xpath('/html/body/div[3]/div/div[3]/div[1]/div[1]/div[2]/div/div/ul/li/a/@href')

利用開發(fā)者工具,可以查看下一頁的URL,拷貝相應(yīng)XPath用于爬取下一頁內(nèi)容。

# 查看“下一頁”的XPath
# /html/body/div[3]/div/div[3]/div[1]/div[2]/div/a[5]

因此可以構(gòu)建如下XPath:

next_selector = response.xpath('//a[@class="next"]')

點(diǎn)擊進(jìn)入專題,可以看到具體圖片,通過查看圖片XPath,用于獲取圖片地址。

# 構(gòu)建圖片XPath
response.xpath('/html/body/div[3]/div/div[2]/div/div[2]/div[1]/div/a/img/@src').extract_first()

可以通過標(biāo)題和圖片序列構(gòu)建圖片名。


# 利用序號(hào)XPath構(gòu)建圖片在列表中的序號(hào)
index = response.xpath('/html/body/div[3]/div/div[2]/div/div[1]/div[1]/span/text()').extract_first()
# 利用標(biāo)題XPath構(gòu)建圖片標(biāo)題
title = response.xpath('/html/body/div[3]/div/div[2]/div/div[1]/div[1]/h1/text()').extract_first()
# 利用圖片標(biāo)題title和序號(hào)index構(gòu)建圖片名
name = title + '_' + index + '.jpg'

同時(shí)可以看到,在專題頁面下,包含了多張圖片,可以通過點(diǎn)擊“下一張”按鈕來獲取下一頁面URL,此處為了簡(jiǎn)化爬取過程,可以通過觀察URL規(guī)律來構(gòu)建每一圖片詳情頁的URL,來下載圖片。

# 第一張圖片詳情頁地址
# http://www.win4000.com/wallpaper_detail_45401.html
# 第二張圖片詳情頁地址
# http://www.win4000.com/wallpaper_detail_45401_2.html

因此可以通過首頁地址和圖片序號(hào)來構(gòu)建每一張圖片詳情頁地址。

# 第一張圖片詳情頁地址
first_url = response.url
# 圖片總數(shù)
num = response.xpath('/html/body/div[3]/div/div[2]/div/div[1]/div[1]/em/text()').extract_first()
num = int(num)
for i in range(2,num+1):
    next_url = '.'.join(first_url.split('.')[:-1]) + '_' + str(i) + '.html'

定義Item字段(Items.py)

本項(xiàng)目用于下載圖片,因此可以僅構(gòu)建圖片名和圖片地址字段。

# win4000/win4000/items.py
import scrapy

class Win4000Item(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    url = scrapy.Field()
    name = scrapy.Field()

編寫爬蟲文件(pictures.py)

代碼詳解見代碼注釋。

# win4000/win4000/spiders/pictures.py
import scrapy
from win4000.items import Win4000Item
from urllib import parse
import time

class PicturesSpider(scrapy.Spider):
    name = 'pictures'
    allowed_domains = ['win4000.com']
    start_urls = ['http://www.win4000.com/zt/fengjing.html']
    
    start_urls = ['http://www.win4000.com/zt/fengjing.html']
    # cookie用于模仿瀏覽器行為
    cookie={
                "t":"29b7c2a8d2bbf060dc7b9ec00e75a0c5",
                "r":"7957",
                "UM_distinctid":"178c933b40e9-08430036bca215-7e22675c-1fa400-178c933b40fa00",
                "CNZZDATA1279564249":"1468742421-1618282415-%7C1618282415",
                "XSRF-TOKEN":"eyJpdiI6Ik8rbStsK1Fwem5zR2YzS29ESlI2dmc9PSIsInZhbHVlIjoiaDl5bXp5b1VvWmdSYklWWkEwMWJBK0FaZG9OaDA1VGQ2akZ0RDNISWNDM0hnOW11Q0JTVDZFNlY4cVwvSTBjQlltUG9tMnFUcWd5MzluUVZ0NDBLZlJuRWFuaVF0U3k0XC9CU1dIUzJybkorUEJ3Y2hRZTNcL0JqdjZnWjE5SXFiNm8iLCJtYWMiOiI2OTBjOTkzMTczYWQwNzRiZWY5MWMyY2JkNTQxYjlmZDE2OWUyYmNjNDNhNGYwNDAyYzRmYTk5M2JhNjg5ZmMwIn0%3D",
                "win4000_session":"eyJpdiI6Inc2dFprdkdMTHZMSldlMXZ2a1cwWGc9PSIsInZhbHVlIjoiQkZHVlNYWWlET0NyWWlEb2tNS0hDSXAwZGVZV05vTmY0N0ZiaFdTa1VRZUVqWkRmNWJuNGJjNkFNa3pwMWtBcFRleCt4SUFhdDdoYnlPMGRTS0dOR0tkdmVtVDhzUWdTTTc3YXpDb0ZPMjVBVGJzM2NoZzlGa045Qnl0MzRTVUciLCJtYWMiOiI2M2VmMTEyMDkxNTIwNmJjZjViYTg4MjIwZGIxNTlmZWUyMTJlYWZhNjk5ZmM0NzgyMTA3MWE4MjljOWY3NTBiIn0%3D"
            }
    
    def start_requests(self):
        """
        重構(gòu)start_requests函數(shù),用于發(fā)送帶有cookie的請(qǐng)求,模仿瀏覽器行為
        """
        yield scrapy.Request('http://www.win4000.com/zt/fengjing.html', callback=self.parse, cookies=self.cookie)

    def parse(self,response):
    	# 獲取下一頁的選擇器
        next_selector = response.xpath('//a[@class="next"]')
        for url in next_selector.xpath('@href').extract():
            url = parse.urljoin(response.url,url)
            # 暫停執(zhí)行,防止網(wǎng)頁的反爬蟲程序
            time.sleep(3)
            # 用于爬取下一頁
            yield scrapy.Request(url, cookies=self.cookie)
        # 用于獲取每一專題的選擇器
        item_selector = response.xpath('/html/body/div[3]/div/div[3]/div[1]/div[1]/div[2]/div/div/ul/li/a/@href')
        for item_url in item_selector.extract():
            item_url = parse.urljoin(response.url,item_url)
            #print(item_url)
            time.sleep(3)
            # 請(qǐng)求專題頁面,并利用回調(diào)函數(shù)callback解析專題頁面
            yield scrapy.Request(item_url,callback=self.parse_item, cookies=self.cookie)
            
    def parse_item(self,response):
        """
        用于解析專題頁面
        """
        # 由于Scrapy默認(rèn)并不會(huì)爬取重復(fù)頁面,
        # 因此需要首先構(gòu)建首張圖片實(shí)體,然后爬取剩余圖片,
        # 也可以通過使用參數(shù)來取消過濾重復(fù)頁面的請(qǐng)求
        # 首張圖片實(shí)體
        item = Win4000Item()
        item['url'] = response.xpath('/html/body/div[3]/div/div[2]/div/div[2]/div[1]/div/a/img/@src').extract_first()
        index = response.xpath('/html/body/div[3]/div/div[2]/div/div[1]/div[1]/span/text()').extract_first()
        item['name'] = response.xpath('/html/body/div[3]/div/div[2]/div/div[1]/div[1]/h1/text()').extract_first() + '_' + index + '.jpg'
        yield item
        first_url = response.url
        num = response.xpath('/html/body/div[3]/div/div[2]/div/div[1]/div[1]/em/text()').extract_first()
        num = int(num)
        for i in range(2,num+1):
            next_url = '.'.join(first_url.split('.')[:-1]) + '_' + str(i) + '.html'
            # 請(qǐng)求其余圖片,并用回調(diào)函數(shù)self.parse_detail解析頁面
            yield scrapy.Request(next_url,callback=self.parse_detail,cookies=self.cookie)

    def parse_detail(self,response):
        """
        解析圖片詳情頁面,構(gòu)建實(shí)體
        """
        item = Win4000Item()
        item['url'] = response.xpath('/html/body/div[3]/div/div[2]/div/div[2]/div[1]/div/a/img/@src').extract_first()
        index = response.xpath('/html/body/div[3]/div/div[2]/div/div[1]/div[1]/span/text()').extract_first()
        item['name'] = response.xpath('/html/body/div[3]/div/div[2]/div/div[1]/div[1]/h1/text()').extract_first() + '_' + index + '.jpg'
        yield item

修改配置文件settings.py

修改win4000/win4000/settings.py中的以下項(xiàng)。

BOT_NAME = 'win4000'

SPIDER_MODULES = ['win4000.spiders']
NEWSPIDER_MODULE = 'win4000.spiders'
# 圖片保存文件夾
IMAGES_STORE = './result'


# Crawl responsibly by identifying yourself (and your website) on the user-agent
# 用于模仿瀏覽器行為
USER_AGENT = 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:87.0) Gecko/20100101 Firefox/87.0'

# Obey robots.txt rules
ROBOTSTXT_OBEY = False

# Configure a delay for requests for the same website (default: 0)
# See https://docs.scrapy.org/en/latest/topics/settings.html#download-delay
# See also autothrottle settings and docs
# 下載時(shí)延
DOWNLOAD_DELAY = 3

# Disable cookies (enabled by default)
# 是否啟用Cookie
COOKIES_ENABLED = True

# Configure item pipelines
# See https://docs.scrapy.org/en/latest/topics/item-pipeline.html
ITEM_PIPELINES = {
    'win4000.pipelines.Win4000Pipeline': 300,
}

修改管道文件pipelines.py用于下載圖片

修改win4000/win4000/pipelines.py文件。

from itemadapter import ItemAdapter
from scrapy.pipelines.images import ImagesPipeline
import scrapy
import os
from scrapy.exceptions import DropItem

class Win4000Pipeline(ImagesPipeline):
    def get_media_requests(self, item, info):
        # 下載圖片,如果傳過來的是集合需要循環(huán)下載
        # meta里面的數(shù)據(jù)是從spider獲取,然后通過meta傳遞給下面方法:file_path
        yield scrapy.Request(url=item['url'],meta={'name':item['name']})

    def item_completed(self, results, item, info):
        # 是一個(gè)元組,第一個(gè)元素是布爾值表示是否成功
        if not results[0][0]:
            with open('img_error_name.txt','a') as f_name:
                error_name = str(item['name'])
                f_name.write(error_name)
                f_name.write('\n')

            with open('img_error_url.txt','a') as f_url:
                error_url = str(item['url'])
                f_url.write(error_url)
                f_url.write('\n')
                raise DropItem('下載失敗')
        return item

     # 重命名,若不重寫這函數(shù),圖片名為哈希,就是一串亂七八糟的名字
    def file_path(self, request, response=None, info=None):
        # 接收上面meta傳遞過來的圖片名稱
        filename = request.meta['name']
        return filename

編寫爬蟲啟動(dòng)文件begin.py

win4000目錄下創(chuàng)建begin.py

# win4000/begin.py
from scrapy import cmdline

cmdline.execute('scrapy crawl pictures'.split())

最終目錄樹

  •  win4000
  • begin.py
  • win4000
  • spiders
  • __init__.py
  • pictures.py
  • __init__.py
  • items.py
  • middlewares.py
  • pipelines.py
  • settings.py
  • scrapy.cfg

項(xiàng)目運(yùn)行

進(jìn)入begin.py所在目錄,運(yùn)行程序,啟動(dòng)scrapy進(jìn)行爬蟲。

$ python3 begin.py

爬取結(jié)果

后記

本項(xiàng)目?jī)H用于測(cè)試用途。
Enjoy coding.

到此這篇關(guān)于Python爬蟲之教你利用Scrapy爬取圖片的文章就介紹到這了,更多相關(guān)python中用Scrapy爬取圖片內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python爬蟲實(shí)戰(zhàn)之使用Scrapy爬取豆瓣圖片
  • Python爬取網(wǎng)站圖片并保存的實(shí)現(xiàn)示例
  • python制作微博圖片爬取工具
  • python繞過圖片滑動(dòng)驗(yàn)證碼實(shí)現(xiàn)爬取PTA所有題目功能 附源碼
  • 利用python批量爬取百度任意類別的圖片的實(shí)現(xiàn)方法
  • Python使用xpath實(shí)現(xiàn)圖片爬取
  • Python Scrapy圖片爬取原理及代碼實(shí)例
  • Python3直接爬取圖片URL并保存示例
  • python爬取某網(wǎng)站原圖作為壁紙
  • 用Python做一個(gè)嗶站小姐姐詞云跳舞視頻

標(biāo)簽:中山 呼和浩特 畢節(jié) 湖州 江蘇 駐馬店 衡水 股票

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python爬蟲之教你利用Scrapy爬取圖片》,本文關(guān)鍵詞  Python,爬蟲,之教,你,利用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python爬蟲之教你利用Scrapy爬取圖片》相關(guān)的同類信息!
  • 本頁收集關(guān)于Python爬蟲之教你利用Scrapy爬取圖片的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    国产伦精品一区二区三区在线观看 | 日韩在线观看免费| 韩国三级视频网站| 二级片在线观看| 91麻豆精品国产综合久久久| 欧美国产日韩一区二区三区| 可以免费看毛片的网站| 国产网站在线| 久久99中文字幕久久| 麻豆污视频| 麻豆污视频| 久久99中文字幕| 999久久久免费精品国产牛牛| 青青久久国产成人免费网站| 欧美激情在线精品video| 国产亚洲免费观看| 九九精品久久久久久久久| 欧美一级视| 国产成a人片在线观看视频| 尤物视频网站在线观看| 国产一级生活片| 日本伦理网站| 欧美激情一区二区三区视频| 久久国产精品只做精品| 国产成+人+综合+亚洲不卡| 欧美国产日韩精品| 国产亚洲精品aaa大片| 国产网站免费视频| 尤物视频网站在线| 国产视频一区二区在线观看| 精品视频在线观看免费| 韩国三级香港三级日本三级| 成人免费一级纶理片| 国产一区二区精品久久91| 香蕉视频亚洲一级| 国产成人精品一区二区视频| 国产成+人+综合+亚洲不卡| 亚飞与亚基在线观看| 一本高清在线| 国产成人啪精品视频免费软件| 精品视频在线看 | 韩国三级一区| 欧美电影免费| 久久国产一久久高清| 亚洲天堂免费| 国产a一级| 欧美激情一区二区三区视频高清 | 国产成人精品综合在线| 国产原创中文字幕| 一级片片| 国产一区二区精品尤物| 欧美一级视频免费| 日韩女人做爰大片| 国产伦久视频免费观看视频| 精品久久久久久中文| 国产视频一区二区在线播放| 欧美大片a一级毛片视频| 99热精品在线| 国产a视频精品免费观看| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产伦精品一区二区三区无广告 | 日日爽天天| 韩国毛片免费大片| 久久成人综合网| 亚飞与亚基在线观看| 精品视频一区二区三区免费| 亚洲精品影院| 日韩中文字幕一区二区不卡| 午夜家庭影院| 国产视频在线免费观看| 国产a一级| 黄色免费三级| 国产亚洲精品成人a在线| 亚洲天堂在线播放| 精品视频免费在线| 亚洲精品久久久中文字| 久久99欧美| 国产视频网站在线观看| 亚洲精品影院| 麻豆污视频| 国产综合91天堂亚洲国产| 欧美爱色| 999精品在线| 香蕉视频一级| 免费的黄视频| 国产成人精品综合久久久| 欧美日本二区| 日韩专区亚洲综合久久| 高清一级淫片a级中文字幕| a级毛片免费全部播放| 精品视频一区二区| 一级女性大黄生活片免费| 国产激情一区二区三区| 中文字幕一区二区三区 精品| 沈樵在线观看福利| 欧美一级视频高清片| 免费一级片在线观看| 精品视频一区二区三区免费| 国产麻豆精品视频| 亚洲 国产精品 日韩| 色综合久久久久综合体桃花网| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 亚飞与亚基在线观看| 四虎影视库| 欧美激情伊人| 97视频免费在线观看| 亚洲第一视频在线播放| 精品国产一区二区三区久久久蜜臀 | 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 精品久久久久久影院免费| 国产精品1024永久免费视频| 成人免费网站视频ww| 成人a大片在线观看| 午夜精品国产自在现线拍| 国产伦久视频免费观看视频| 国产网站免费观看| 日本在线播放一区| 91麻豆精品国产高清在线| 国产福利免费观看| 国产一级生活片| 黄视频网站在线看| 四虎久久影院| 久久国产精品自线拍免费| 国产不卡高清| 超级乱淫伦动漫| 日韩一级黄色片| 99热精品一区| 成人免费观看男女羞羞视频| 一级女人毛片人一女人| 久久国产精品永久免费网站| 国产一区二区精品久久| a级毛片免费观看网站| 国产成人啪精品视频免费软件| 国产国语对白一级毛片| 国产麻豆精品高清在线播放| 免费国产在线观看不卡| 亚欧成人乱码一区二区| 亚洲 男人 天堂| 九九免费精品视频| 精品久久久久久影院免费| 午夜家庭影院| 欧美大片一区| 一本高清在线| 国产韩国精品一区二区三区| 成人免费高清视频| 久久久久久久男人的天堂| 国产一区二区精品| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 可以免费在线看黄的网站| 欧美a免费| 精品视频免费看| 麻豆午夜视频| 国产伦精品一区二区三区在线观看 | 亚洲第一页乱| 青草国产在线观看| 国产原创中文字幕| 亚洲天堂在线播放| 你懂的日韩| 国产一区二区福利久久| 欧美另类videosbestsex久久 | 九九九国产| 日韩一级黄色大片| 日韩在线观看免费| 成人免费网站久久久| 日韩中文字幕一区二区不卡| 欧美国产日韩久久久| 999久久狠狠免费精品| 亚飞与亚基在线观看| 国产成人精品综合久久久| 天天做人人爱夜夜爽2020| 日本伦理片网站| 国产伦理精品| 日本在线不卡视频| 韩国毛片基地| 人人干人人插| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 久久福利影视| 久久国产一区二区| 欧美日本免费| 青青久久精品| 国产91精品系列在线观看| 国产国产人免费视频成69堂| 91麻豆tv| 久久成人性色生活片| 精品国产一区二区三区久久久蜜臀 | 亚洲第一页色| 日本特黄一级| 国产视频久久久| 一级毛片视频免费| 国产精品1024永久免费视频| 999精品影视在线观看| 色综合久久天天综线观看| 日韩专区亚洲综合久久| 日韩免费在线视频| 亚洲精品影院| 欧美1区2区3区| 久久福利影视| 成人高清免费| 黄视频网站在线免费观看| 九九免费精品视频|