久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術(shù)文章
文章詳情頁

Python爬蟲進階之Beautiful Soup庫詳解

瀏覽:3日期:2022-06-20 17:41:22
一、Beautiful Soup庫簡介

BeautifulSoup4 是一個 HTML/XML 的解析器,主要的功能是解析和提取 HTML/XML 的數(shù)據(jù)。和 lxml 庫一樣。

lxml 只會局部遍歷,而 BeautifulSoup4 是基于 HTML DOM 的,會加載整個文檔,解析 整個 DOM 樹,因此內(nèi)存開銷比較大,性能比較低。

BeautifulSoup4 用來解析 HTML 比較簡單,API 使用非常人性化,支持 CSS 選擇器,是 Python 標(biāo)準(zhǔn)庫中的 HTML 解析器,也支持 lxml 解析器。

二、Beautiful Soup庫安裝

目前,Beautiful Soup 的最新版本是 4.x 版本,之前的版本已經(jīng)停止開發(fā),這里推薦使用 pip 來安裝,安裝命令如下:

pip install beautifulsoup4

查看 Beautiful Soup 安裝是否成功

from bs4 import BeautifulSoup soup = BeautifulSoup(’<p>Hello</p>’,’html.parser’) print(soup.p.string)

注意:□ 這里雖然安裝的是 beautifulsoup4 這個包,但是引入的時候卻是 bs4,因為這個包源 代碼本身的庫文件名稱就是bs4,所以安裝完成后,這個庫文件就被移入到本機 Python3 的 lib 庫里,識別到的庫文件就叫作 bs4。□ 因此,包本身的名稱和我們使用時導(dǎo)入包名稱并不一定是一致的。

三、Beautiful Soup 庫解析器

Beautiful Soup 在解析時實際上依賴解析器,它除了支持 Python 標(biāo)準(zhǔn)庫中的 HTML 解析器外,還支持一些第三方解析器(比如 lxml)。下表列出了 Beautiful Soup 支持的解析器。

Python爬蟲進階之Beautiful Soup庫詳解Python爬蟲進階之Beautiful Soup庫詳解

初始化 BeautifulSoup 使用 lxml,把第二個參數(shù)改為 lxml

from bs4 import BeautifulSoup bs = BeautifulSoup(’<p>Python</p>’,’lxml’) print(bs.p.string)四、Beautiful Soup庫基本用法

Python爬蟲進階之Beautiful Soup庫詳解

獲取 title 節(jié)點,查看它的類型

from bs4 import BeautifulSouphtml = ’’’ <html><head><title>The Dormouse’s story</title></head> <body> <p name='dromouse'><b>The Dormouse’s story</b></p> <p class='story'>Once upon a time there were three little sisters; and their names were <a rel='external nofollow' rel='external nofollow' rel='external nofollow' rel='external nofollow' rel='external nofollow' id='link1'><!-- Elsie --></a>, <a rel='external nofollow' rel='external nofollow' rel='external nofollow' id='link2'>Lacie</a> and <a rel='external nofollow' rel='external nofollow' rel='external nofollow' id='link3'>Tillie</a>; and they lived at the bottom of a well.</p> <p class='story'>...</p> </body> </html>’’’# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)print(soup.prettify())print(soup.title.string)

執(zhí)行結(jié)果如下所示:

The Dormouse’s story

上述示例首先聲明變量 html,它是一個 HTML 字符串。接著將它當(dāng)作第一個參數(shù)傳給 BeautifulSoup 對象,該對象的第二個參數(shù)為解析器的類型(這里使用 lxml),此時就完成了 BeaufulSoup 對象的初始化。 接著調(diào)用 soup 的各個方法和屬性解析這串 HTML 代碼了。 調(diào)用 prettify()方法。可以把要解析的字符串以標(biāo)準(zhǔn)的縮進格式輸出。這里需要注意的是, 輸出結(jié)果里面包含 body 和 html 節(jié)點,也就是說對于不標(biāo)準(zhǔn)的 HTML 字符串 BeautifulSoup, 可以自動更正格式。 調(diào)用 soup.title.string,輸出 HTML 中 title 節(jié)點的文本內(nèi)容。所以,soup.title 可以選出 HTML 中的 title 節(jié)點,再調(diào)用 string 屬性就可以得到里面的文本了。

選擇元素

# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)# 獲取head標(biāo)簽print(soup.head)# 獲取p標(biāo)簽print(soup.p)

運行結(jié)果

<head><title>The Dormouse’s story</title></head><p name='dromouse'><b>The Dormouse’s story</b></p>

從上述示例運行結(jié)果可以看到,獲取 head 節(jié)點的結(jié)果是節(jié)點加其內(nèi)部的所有內(nèi)容。 最后,選擇了 p 節(jié)點。不過這次情況比較特殊,我們發(fā)現(xiàn)結(jié)果是第一個 p 節(jié)點的內(nèi)容,后面的幾個 p 節(jié)點并沒有選到。也就是說,當(dāng)有多個節(jié)點時,這種選擇方式只會選擇到第一個匹配的節(jié)點,其他的后面節(jié)點都會忽略。

調(diào)用 name 屬性獲取節(jié)點的名稱

# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)# 調(diào)用 name 屬性獲取節(jié)點的名稱print(soup.title.name)

運行結(jié)果

title

調(diào)用 attrs 獲取所有屬性

# 調(diào)用 attrs 獲取所有屬性print(soup.p.attrs)print(soup.p.attrs[’name’])

運行結(jié)果

{’class’: [’title’], ’name’: ’dromouse’}dromouse

從上述運行結(jié)果可以看到,attrs 的返回結(jié)果是字典形式,它把選擇節(jié)點的所有屬性和屬性值組合成一個字典。如果要獲取 name 屬性,就相當(dāng)于從字典中獲取某個鍵值,只需要用中括號加屬性名就可以了。例如,要獲取 name 屬性,就可以通過 attrs[‘name’] 來得到。

簡單獲取屬性的方式

print(soup.p[’name’])print(soup.p[’class’])

這里需要注意的是,獲取屬性有的返回結(jié)果是字符串,有的返回結(jié)果是字符串組成的列表。

比如,name 屬性的值是唯一的,返回的結(jié)果就是單個字符串。而對于 class,一個節(jié)點元素可能有多個 class,所以返回的是列表。

調(diào)用 string 屬性獲取節(jié)點元素包含的文本內(nèi)容

print(’調(diào)用 string 屬性獲取節(jié)點元素包含的文本內(nèi)容’)print(soup.p.string)

嵌套選擇

print(’嵌套選擇’)print(soup.head.title)# 獲取title的類型print(type(soup.head.title))# 獲取標(biāo)簽內(nèi)容print(soup.head.title.string)

運行結(jié)果

<title>The Dormouse’s story</title><class ’bs4.element.Tag’>The Dormouse’s story

從上述示例運行結(jié)果可以看到,調(diào)用 head 之后再次調(diào)用 title 可以選擇 title 節(jié)點元素。 輸出了它的類型可以看到,它仍然是 bs4.element.Tag 類型。也就是說,我們在 Tag 類型的基礎(chǔ)上再次選擇得到的依然還是 Tag 類型,每次返回的結(jié)果都相同。

調(diào)用 children 屬性,獲取它的直接子節(jié)點

from bs4 import BeautifulSouphtml = ’’’ <html> <head> <title>The Dormouse’s story</title> </head> <body> <p class='story'> Once upon a time there were three little sisters; and their names were <a rel='external nofollow' rel='external nofollow' rel='external nofollow' rel='external nofollow' rel='external nofollow' id='link1'> <span>Elsie</span> </a> <a rel='external nofollow' rel='external nofollow' rel='external nofollow' id='link2'>Lacie</a> and <a rel='external nofollow' rel='external nofollow' rel='external nofollow' id='link3'>Tillie</a> and they lived at the bottom of a well. </p> <p class='story'>...</p>’’’# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)# 獲取孩子結(jié)點print(soup.p.children)# 遍歷孩子結(jié)點# 將列表中元素與下標(biāo)枚舉為元組# 獲取p標(biāo)簽下的孩子標(biāo)簽for i, child in enumerate(soup.p.children): print(i, child)

執(zhí)行結(jié)果

<list_iterator object at 0x0CACF448>0 Once upon a time there were three little sisters; and their names were 1 <a id='link1'><span>Elsie</span></a>2 3 <a id='link2'>Lacie</a>4 and 5 <a id='link3'>Tillie</a>6 and they lived at the bottom of a well.

從上述示例運行結(jié)果可以看到,調(diào)用 children 屬性,返回結(jié)果是生成器類型。用 for 循環(huán)輸出相應(yīng)的內(nèi)容。

調(diào)用 parent 屬性,獲取某個節(jié)點元素的父節(jié)點

from bs4 import BeautifulSouphtml = ’’’ <html> <head> <title>The Dormouse’s story</title> </head> <body><p class='story'> Once upon a time there were three little sisters; and their names were <a rel='external nofollow' rel='external nofollow' rel='external nofollow' rel='external nofollow' rel='external nofollow' id='link1'> <span>Elsie</span> </a> </p> <p class='story'>...</p>’’’# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)# 獲取父結(jié)點print(soup.a.parent)

運行結(jié)果

<p class='story'> Once upon a time there were three little sisters; and their names were <a id='link1'><span>Elsie</span></a></p>

從上述示例運行結(jié)果可以看到,我們選擇的是第一個 a 節(jié)點的父節(jié)點元素,它的父節(jié)點 是 p 節(jié)點,輸出結(jié)果便是 p 節(jié)點及其內(nèi)部的內(nèi)容。 需要注意的是,這里輸出的僅僅是 a 節(jié)點的直接父節(jié)點,而沒有再向外尋找父節(jié)點的祖 先節(jié)點。如果想獲取所有的祖先節(jié)點,可以調(diào)用 parents 屬性。

調(diào)用 parents 屬性,獲取某個節(jié)點元素的祖先節(jié)點

from bs4 import BeautifulSouphtml = ’’’ <html> <body><p class='story'> <a rel='external nofollow' rel='external nofollow' rel='external nofollow' rel='external nofollow' rel='external nofollow' id='link1'> <span>Elsie</span> </a> </p>’’’# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)# 獲取父結(jié)點print(type(soup.a.parents)) # 獲取類型print(list(enumerate(soup.a.parents)))

運行結(jié)果

[(0, <p class='story'><a id='link1'><span>Elsie</span></a></p>), (1, <body><p class='story'><a id='link1'><span>Elsie</span></a></p></body>), (2, <html><body><p class='story'><a id='link1'><span>Elsie</span></a></p></body></html>), (3, <html><body><p class='story'><a id='link1'><span>Elsie</span></a></p></body></html>)]

調(diào)用 next_sibling 和 previous_sibling 分別獲取節(jié)點的下一個和上一個兄弟元素

from bs4 import BeautifulSouphtml = ’’’ <html> <body> <p class='story'> Once upon a time there were three little sisters; and their names were <a rel='external nofollow' rel='external nofollow' rel='external nofollow' rel='external nofollow' rel='external nofollow' id='link1'> <span>Elsie</span> </a> Hello <a rel='external nofollow' rel='external nofollow' rel='external nofollow' id='link2'>Lacie</a> and <a rel='external nofollow' rel='external nofollow' rel='external nofollow' id='link3'>Tillie</a> and they lived at the bottom of a well. </p>’’’# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)# 獲取下一個結(jié)點的屬性print(’Next Sibling’, soup.a.next_sibling)print(’Previous Sibling’, soup.a.previous_sibling)

運行結(jié)果

Next Sibling Hello Previous Sibling Once upon a time there were three little sisters; and their names were

五、方法選擇器

上面所講的選擇方法都是通過屬性來選擇的,這種方法非常快,但是如果進行比較復(fù)雜的選擇的話,它就比較煩瑣,不夠靈活了。

Beautiful Soup 還提供了一些查詢方法,例如:find_all()和 find()等。

find_all 是查詢所有符合條件的元素。給它傳入一些屬性或文本,就可以得到符合條件的元素,它的功能十分強大。

語法格式如下:

find_all(name , attrs , recursive , text , **kwargs)

find_all 方法傳入 name 參數(shù),根據(jù)節(jié)點名來查詢元素

from bs4 import BeautifulSouphtml = ’’’ <div class='panel'> <div class='panel-heading'> <h4>Hello</h4> </div> <div class='panel-body'> <ul id='list-1'> <li class='element'>Foo</li> <li class='element'>Bar</li> <li class='element'>Jay</li> </ul> <ul id='list-2'> <li class='element'>Foo</li> <li class='element'>Bar</li> </ul> </div> </div>’’’# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)for ul in soup.find_all(name=’ul’): print(ul.find_all(name=’li’)) for li in ul.find_all(name=’li’):print(li.string)

結(jié)果如下

[<li class='element'>Foo</li>, <li class='element'>Bar</li>, <li class='element'>Jay</li>]FooBarJay[<li class='element'>Foo</li>, <li class='element'>Bar</li>]FooBar

從上述示例可以看到,調(diào)用 find_all()方法,name 參數(shù)值為 ul。返回結(jié)果是查詢到的所有 ul 節(jié)點列表類型,長度為 2,每個元素依然都是 bs4.element.Tag 類型。因為都是 Tag 類型, 所以依然可以進行嵌套查詢。再繼續(xù)查詢其內(nèi)部的 li 節(jié)點,返回結(jié)果是 li 節(jié)點列表類型, 遍歷列表中的每個 li,獲取它的文本。

find_all 方法傳入 attrs 參數(shù),根據(jù)屬性來查詢

from bs4 import BeautifulSouphtml = ’’’ <div class='panel'> <div class='panel-heading'> <h4>Hello</h4> </div> <div class='panel-body'> <ul name='elements'> <li class='element'>Foo</li> <li class='element'>Bar</li> <li class='element'>Jay</li> </ul> <ul id='list-2'> <li class='element'>Foo</li> <li class='element'>Bar</li> </ul> </div> </div>’’’# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)print(soup.find_all(attrs={’id’: ’list-1’}))print(soup.find_all(attrs={’name’: ’elements’}))

結(jié)果如下

[<ul name='elements'><li class='element'>Foo</li><li class='element'>Bar</li><li class='element'>Jay</li></ul>][<ul name='elements'><li class='element'>Foo</li><li class='element'>Bar</li><li class='element'>Jay</li></ul>]

從上述示例可以看到,傳入 attrs 參數(shù),參數(shù)的類型是字典類型。比如,要查詢 id 為 list-1 的節(jié)點,可以傳入 attrs={‘id’: ‘list-1’}的查詢條件,得到的結(jié)果是列表形式,包含的內(nèi)容就是符合 id 為 list-1 的所有節(jié)點。符合條件的元素個數(shù)是 1,長度為 1 的列表。對于一些常用的屬性,比如 id 和 class 等,可以不用 attrs 來傳遞。比如,要查詢 id 為 list-1 的節(jié)點 ,可以直接傳入 id 這個參數(shù)。

示例如下:

print(soup.find_all(id=’list-1’))print(soup.find_all(class_=’element’))

上述示例直接傳入 id=’list-1’,就可以查詢 id 為 list-1 的節(jié)點元素了。而對于 class 來 說,由于 class 在 Python 里是一個關(guān)鍵字,所以后面需要加一個下劃線,即 class_=’element’, 返回的結(jié)果依然還是 Tag 組成的列表。

find_all 方法根據(jù)文本來查詢

find_all 方法傳入 text 參數(shù)可用來匹配節(jié)點的文本,傳入的形式可以是字符串,可以是正則表達式對象。

from bs4 import BeautifulSoupimport rehtml = ’’’ <div class='panel'> <div class='panel-body'> <a>Hello, this is a link</a> <a>Hello, this is a link, too</a> </div> </div>’’’# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)print(soup.find_all(text=re.compile(’link’)))

運行結(jié)果

[’Hello, this is a link’, ’Hello, this is a link, too’]

上述示例有兩個 a 節(jié)點,其內(nèi)部包含文本信息。這里在 find_all()方法中傳入 text 參數(shù), 該參數(shù)為正則表達式對象,結(jié)果返回所有匹配正則表達式的節(jié)點文本組成的列表。除了 find_all()方法,還有 find()方法,不過后者返回的是單個元素,也就是第一個匹配的元素,而前者返回的是所有匹配的元素組成的列表。

find 方法查詢第一個匹配的元素

from bs4 import BeautifulSoupimport rehtml = ’’’ <<div class='panel'> <div class='panel-heading'> <h4>Hello</h4> </div> <div class='panel-body'> <ul id='list-1'> <li class='element'>Foo</li> <li class='element'>Bar</li> <li class='element'>Jay</li> </ul> <ul id='list-2'> <li class='element'>Foo</li> <li class='element'>Bar</li> </ul> </div> </div>’’’# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)# 獲取標(biāo)簽名為ul的標(biāo)簽體內(nèi)容print(soup.find(name=’ul’))# 獲取返回結(jié)果的列表print(type(soup.find(name=’ul’)))# 查找標(biāo)簽中class是’list’print(soup.find(class_=’list’))

結(jié)果如下

<ul id='list-1'><li class='element'>Foo</li><li class='element'>Bar</li><li class='element'>Jay</li></ul><class ’bs4.element.Tag’><ul id='list-1'><li class='element'>Foo</li><li class='element'>Bar</li><li class='element'>Jay</li></ul>

上述示例使用 find 方法返回結(jié)果不再是列表形式,而是第一個匹配的節(jié)點元素,類型依然是 Tag 類型。

六、CSS 選擇器

Beautiful Soup 還提供了另外一種選擇器,那就是 CSS 選擇器。使用 CSS 選擇器時,只 需要調(diào)用 select()方法,傳入相應(yīng)的 CSS 選擇器即可。

CSS相關(guān)知識

#element: id選擇器.

element:類選擇器

tag tag:派生選擇器

通過依據(jù)元素在其位置的上下文關(guān)系來定義樣式,你可以使標(biāo)記更加簡潔。

from bs4 import BeautifulSoupimport rehtml = ’’’ <div class='panel'> <div class='panel-heading'> <h4>Hello</h4> </div> <div class='panel-body'> <ul id='list-1'> <li class='element'>Foo</li> <li class='element'>Bar</li> <li class='element'>Jay</li> </ul> <ul id='list-2'> <li class='element'>Foo</li> <li class='element'>Bar</li> </ul> </div> </div>’’’# 獲取bs4解析對象,使用解析器:lxml,html:解析內(nèi)容soup = BeautifulSoup(html, ’lxml’)# 獲取class=panel標(biāo)簽下panel_heading,類選擇器print(soup.select(’.panel .panel-heading’))# 派生選擇器print(soup.select(’ul li’))# id選擇器+類選擇器lis = soup.select(’#list-2 .element’)for l in lis: print(’GET TEXT’, l.get_text()) print(’String:’, l.string)

結(jié)果如下

[<div class='panel-heading'><h4>Hello</h4></div>][<li class='element'>Foo</li>, <li class='element'>Bar</li>, <li class='element'>Jay</li>, <li class='element'>Foo</li>, <li class='element'>Bar</li>]GET TEXT FooString: FooGET TEXT BarString: Bar

上述示例,用了 3 次 CSS 選擇器,返回的結(jié)果均是符合 CSS 選擇器的節(jié)點組成的列表。 例如,select(‘ul li’)則是選擇所有 ul 節(jié)點下面的所有 li 節(jié)點,結(jié)果便是所有的 li 節(jié)點組成的列表。要獲取文本,當(dāng)然也可以用前面所講的 string 屬性。此外,還有一個方法,那就是 get_text()。

到此這篇關(guān)于Python爬蟲進階之Beautiful Soup庫詳解的文章就介紹到這了,更多相關(guān)Python Beautiful Soup庫詳解內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 黄色一级网址 | 成人激情视频在线免费观看 | 涩涩天堂 | 欧美日韩综合 | 91视频.com| 欧日韩不卡在线视频 | 狠狠综合久久av一区二区老牛 | 999精品网 | 午夜视频 | 91久色 | 亚洲精品女人久久 | 激情国产 | 久久精品国产99国产精品 | 成人爽a毛片一区二区免费 美女高潮久久久 | 精品一区二区三区免费看 | 欧美二区三区视频 | 亚洲一区二区三区免费在线观看 | 国产精品久久久久一区二区三区 | 成人永久免费视频 | 亚洲精品成人av | 日韩精品专区 | av女人的天堂 | 午夜视频黄 | 午夜精品久久久久久久久久久久久 | 国产精品影院在线观看 | 成人免费一区二区三区视频网站 | www.久久久.com | xnxx 美女19 | 日韩精品在线免费观看 | 九九热在线视频免费观看 | 亚洲一区二区三区在线免费观看 | 日日操夜夜添 | 久久99国产精品久久99大师 | 日韩免费av| 久久午夜综合久久 | 欧美精品一级 | 成人精品三级av在线看 | 亚洲小视频 | 一区二区三| 欧洲精品在线观看 | 天天操妹子 | 成人免费一区二区三区视频软件 | 欧美精品成人 | 国产精久久一区二区三区 | 精品婷婷 | 国产日韩欧美在线观看 | 米奇狠狠操| 久久免费视频国产 | 亚洲aaaaaa特级 | 五月激情综合网 | 欧美日韩在线不卡 | 精品免费久久久久久久苍 | 欧美日韩一区二区三区 | 黄色拍拍视频 | 国产精品国色综合久久 | 婷婷精品视频 | 欧美一级精品片在线看 | 欧美区国产| 一区二区免费看 | 中文字幕二区三区 | 国产成人精品免费视频大全 | 久久久影视| 欧美日韩不卡合集视频 | 亚洲一区日韩 | 亚洲综合中文 | 91国自产精品中文字幕亚洲 | 久久另类ts人妖一区二区 | 97久久久国产精品 | 91精品国产高清一区二区三区 | 成人亚洲一区 | 国产精品视频免费播放 | 在线精品一区 | 免费成人高清 | 久久精品亚洲精品国产欧美kt∨ | 国产精品99久久久久久动医院 | 欧美激情一区二区三区 | 亚洲 欧美 另类 综合 偷拍 | 黄色片免费在线观看 | 一区二区日韩视频 | 卡通动漫第一页 | 中文字幕亚洲欧美日韩在线不卡 | 亚洲 中文 欧美 日韩 在线观看 | 国产色播av在线 | 麻豆一区 | 香港黄色录像片 | 中文亚洲字幕 | 成人网址在线观看 | 日本高清h色视频在线观看 日日干日日操 | 欧美久久综合 | 国产日韩欧美一区 | 亚洲欧美日韩在线 | 国产精品美女久久久久久久久久久 | 丝袜久久 | 中文字幕在线观看 | 国产一区久久 | 成人午夜剧场 | 欧美黄色片 | 日日做夜夜爽毛片麻豆 | 欧美成人一区二区三区片免费 | 国产成人激情 | 亚洲免费av在线 | 91污在线观看 | 国产一区二区视频精品 | 99re6热只有精品免费观看 | 国产一区二区三区四区 | 亚洲777| 欧美在线免费 | 日韩性猛交 | 99热在线免费观看 | 91视频在线观看 | 久久久国产精品视频 | 亚洲高清视频在线观看 | 国产一区www| 六月婷婷综合 | 高清视频一区二区三区 | 在线观看免费成人av | 国产精品高潮呻吟av久久4虎 | 中文字幕在线免费 | 一区二区亚洲 | 欧美精品一区二区三区蜜桃视频 | 久久精品毛片 | 久久免费小视频 | 91香蕉视频在线观看 | 精品一区二区三区免费视频 | 欧美xxxx片| 中文字幕在线免费看 | 日韩1区 | 九九综合九九综合 | 欧美日韩干 | 色黄网站 | 亚洲一区二区三区福利 | 国产伦精品一区二区三区四区视频 | 在线免费国产视频 | a级性生活 | 成人1区2区 | 天天爽夜夜爽夜夜爽精品视频 | 欧美日韩中文国产一区发布 | 国产免费自拍 | 亚洲国产精品人人爽夜夜爽 | 欧美综合网| 国产精品久久久久久妇女6080 | 久久精品欧美一区二区三区不卡 | 国产精品免费一区 | 一级日批片 | 日韩电影在线看 | 欧美日韩电影一区二区三区 | 99色影院 | 国产精品久久久久久亚洲调教 | 特a级片| 精品国精品国产自在久不卡 | 一级黄色毛片子 | 久久精品六 | 精品国产乱码简爱久久久久久 | 亚洲国产精品一区二区久久 | h视频免费观看 | 亚洲成人免费在线观看 | 欧美一级二级视频 | 久久久久久亚洲一区二区三区蜜臀 | 国产欧美在线播放 | 美女91| 日韩免费高清在线 | 成人免费视频在线观看 | 久久久性色精品国产免费观看 | 黄色拍拍视频 | 亚洲精品乱码久久久久久国产主播 | 成人午夜性a一级毛片免费看 | 狠狠操狠狠干 | 久草免费在线 | 一区网站| 免费观看a视频 | 99精品欧美一区二区三区综合在线 | 亚洲av毛片 | 久久人人爽人人爽人人片亚洲 | 欧美亚洲视频在线观看 | 亚洲日韩欧美一区二区在线 | 国产精品久久久久久久久久99 | 亚洲第一天堂 | 国产欧美精品一区二区 | 国产精成人 | 色综合av| 欧美日本韩国一区二区 | 99伊人| 欧美在线国产 | 日韩免费一区 | 日韩福利在线观看 | 五月免费视频 | 欧美成人一区二区三区片免费 | 欧美亚洲高清 | 久久精品欧美一区二区三区麻豆 | 99亚洲精品 | 综合色婷婷一区二区亚洲欧美国产 | 国产精品69久久久久水密桃 | 午夜合集 | 中文字幕国产日韩 | 成人亚洲免费视频 | 91高清在线 | 99热精品在线 | 国产中文字幕一区二区三区 | 激情的网站 | 欧美激情网址 | 亚洲男人天堂网 | 一级毛片免费播放 | 久久天堂网 | 在线亚洲精品 | 午夜精品一区二区三区四区 | 狠狠干av | 综合网视频 | 精品伊人久久 | 天堂√在线观看一区二区 | 精品中文字幕在线观看 | 国产精品美女久久久久久免费 | 香蕉91| zzzzyyyy精品国产 | 精品国产综合 | 亚洲精品成人在线 | 成人av观看| 一区二区三区四区免费看 | 欧美久久免费观看 | 国产精品久久久久aaaa九色 | 国产做a爱片久久毛片 | 成人精品视频 | 免费啪啪网站 | 亚洲精品电影在线观看 | 国产色| 一区二区三区亚洲精品国 | 毛片久久 | 成人在线免费 | 成人av免费在线观看 | 天堂中文在线视频 | 亚洲一区二区三区中文字幕 | 日韩欧美一级二级 | 国产成人精品一区二区在线 | 欧美一级在线观看 | 久久不卡日韩美女 | www操com| 国产一级特黄aaa大片评分 | 天天拍天天草 | 免费成人高清在线视频 | aaa在线免费观看 | 午夜精品久久久久久久久久久久久 | 亚洲天堂一区 | 一本一道久久a久久精品逆3p | 青草青草久热精品视频在线观看 | 91.com在线| 四虎免费看黄 | 国产精品主播 | 999免费视频 | 天天操天天干天天爽 | 在线观看免费视频日韩 | 色网站视频 | 午夜精品久久久久久 | 在线一区二区三区 | 欧美日韩中文字幕 | 欧美视频网站 | 日韩精品视频在线观看一区二区 | 成人欧美一区二区三区黑人孕妇 | 欧洲妇女成人淫片aaa视频 | 国产在线精品一区 | 91精品久久久久久久99 | www.成人.com | 影视一区 | www日韩 | 欧美精品导航 | 色综合久久一区二区三区 | www.精品 | 岛国免费 | 国产精品美女久久久久久久久久久 | 国产精品国产精品国产专区不卡 | 日韩三及片 | 亚洲精品一二三 | 日本三级在线观看中文字 | av片网站| 国产激情偷乱视频一区二区三区 | 久久99视频这里只有精品 | 精品一区二区三区不卡 | 不卡视频一区二区三区 | 国外成人在线视频网站 | 欧美激情一区 | 人人av在线 | 亚洲无吗天堂 | 亚洲综合色自拍一区 | 国产精品国产三级国产aⅴ中文 | 三区在线 | 国产成人精品久久 | 精品国产不卡一区二区三区 | 欧美日韩精品一区 | 国产精品久久久久久久久久久久 | 中文字幕国产视频 | 国产免费自拍视频 | 国产精品污www在线观看 | 国产色| 99精品国产高清一区二区麻豆 | 美女91 | 精品视频久久 | 国产综合久久久久久鬼色 | 国产精品美女久久久久久久久久久 | 久草热视频| 青青草视频在线免费观看 | 亚洲精品9999 | 久久免费视频网 | 欧美精品一区二 | 精品国产免费久久久久久尖叫 | 91免费在线播放 | 三区在线观看 | 亚洲日韩欧美一区二区在线 | 亚洲www啪成人一区二区 | 黄色地址 | 成人免费一区二区三区视频网站 | 国产成人影院 | 在线观看亚洲一区二区三区 | 精品久久久久久久久久久久久久 | 欧美日韩不卡合集视频 | 精品久久久久久久久久久久久久久久久久 | 国产精品美女久久久久aⅴ国产馆 | 国产伦精品一区二区三区在线 | 亚洲精品乱码久久久久久花季 | 日韩精品免费视频 | 欧美一级黄 | 日本一区二区中文字幕 | 一区二区中文字幕 | jizz欧美大片 | 国产综合久久久久久鬼色 | 欧美性一区二区 | 亚洲欧美日韩电影 | 欧美日韩电影一区 | 亚洲精品视频一区 | a在线看| 黄色一级毛片免费 | 精品一区久久 | 久久精品99国产精品亚洲最刺激 | 草草精品视频 | 久久中文字幕一区 | 天堂va在线高清一区 | 99久久视频 | 欧美亚洲日本 | 91在线 | 亚洲| 欧美视频在线播放 | 亚洲不卡视频在线观看 | 国产v日产∨综合v精品视频 | 超碰免费在线观看 | 亚洲91| 亚洲二区在线视频 | 国产操片| 一区二区国产精品 | 国产亲子乱弄免费视频 | 亚洲午夜一区 | 欧美日韩国产一区二区在线观看 | 中国特黄毛片 | 国产精品视频 | 日日操狠狠操 | 成人一级片 | 成人水多啪啪片 | 国产精品18 | 黄色片在线免费观看 | 欧美激情精品久久久久 | 在线观看日韩 | 日日操狠狠操 | 国产黄色av | av免费观看网页 | 亚洲视频免费在线观看 | 成视频年人免费看黄网站 | 亚洲成av人影片在线观看 | 一区在线观看 | 国产免费黄视频 | 欧美激情网 | 91免费看电影 | 无码少妇一区二区三区 | 欧美视频在线免费看 | 99爱免费视频 | 成人在线免费观看 | 国产黄色网址在线观看 | 青青久久| 蜜桃视频麻豆女神沈芯语免费观看 | 蜜桃视频麻豆女神沈芯语免费观看 | 黑人性dh| 国产精品美女www爽爽爽动态图 | 国产精品欧美久久久久一区二区 | 亚洲一区二区三区免费在线 | 午夜午夜精品一区二区三区文 | 三级黄色片在线观看 | 欧美成人精品一区二区三区在线看 | 亚洲免费婷婷 | 国产精品免费在线 | 国产在线观看二区 | 久操成人 | 国内精品久久久久久中文字幕 | 一区二区三区回区在观看免费视频 | 亚洲欧美电影 | 亚洲婷婷综合网 | 欧美日韩精品免费观看视频 | 国产99页 | 午夜精品久久久久久久久久久久久 | 精品在线一区二区三区 | 欧美精品乱码久久久久久按摩 | 黄色片在线免费观看 | 亚洲国产精品一区二区第一页 | 在线视频 亚洲 | 国产精品久久久久久久久久新婚 | 夜夜操导航 | 国产不卡在线观看 | 午夜三区 | 欧美大片一区 | 国产三级 | 亚洲精品免费看 | 黄色毛片在线观看 | 影音先锋男人网 | 老熟女毛片 | 男女做爰高清无遮挡免费视频 | 视频精品一区 | 一本色道精品久久一区二区三区 | 日本一区二区在线视频 | 99久久久国产精品 | 在线国产一区二区 | 午夜精品久久久久久久 | 久久爱综合网 | 欧美成人手机在线 | 免费看片色 | 久草免费在线 | 国产精品第一国产精品 | 午夜精品一区二区三区在线视频 | 国产精品成人国产乱一区 | 成人国产精品色哟哟 | 亚洲第一中文字幕 | 久久久久久艹 | 一级毛片大全免费播放 | 国产日韩欧美一区二区 | 午夜国产精品成人 | 亚洲综合二 | 精品久久久久久亚洲综合网 | 蜜桃色网| 在线播放黄色片网站 | 久久久久久久久久久久国产精品 | 精品国产一区二区三区性色 | 日韩三级视频 | 日本美女一区二区三区 | 国产在线精品二区 | 国产精品美女久久久久久免费 | 欧美一区2区三区4区公司二百 | 日本在线视频一区二区 | 亚洲日本欧美 | 国产色黄视频 | 精品美女在线 | 亚洲一区二区av | 99久久婷婷国产精品综合 | 国产精品久久久久久久久久久杏吧 | 毛片免费视频 | 亚洲视频一区二区三区 | 99在线精品视频 | 一区二区三区回区在观看免费视频 | 国产男女做爰免费网站 | 国产丝袜一区二区三区免费视频 | 国产综合久久久 | 欧美暴操 | 日本黄色片免费 | 在线视频a | 超碰在线一区二区三区 | 亚洲av毛片 | 一本一本久久a久久精品综合妖精 | 久久久精品一区 | 成人在线小视频 | 欧美日韩免费看 | a级在线观看| 日韩av高清在线 | 色黄视频在线看 | 国产噜噜噜噜噜久久久久久久久 | 日韩福利视频 | 成人av免费看 | 国产精品日韩精品 | 国产精品高潮呻吟久久av野狼 | 在线色网| av在线免费看片 | 亚洲中午字幕 | 欧美精品一区二区蜜臀亚洲 | 国产欧美综合一区 | 国内精品久久久久 | 精品一区二区久久久久久久网站 | 日韩国产精品视频 | 波多野结衣一区二区三区中文字幕 | 精品国精品国产自在久不卡 | 三级网站在线播放 | 青青草91在线视频 | 欧美精品成人 | 午夜精品成人一区二区 | 国产精品视频一区二区免费不卡 | 日韩av一区二区在线观看 | 成人欧美一区二区三区 | 欧美中文字幕在线 | 日韩欧美在线观看一区 | 日韩精品一区二区三区中文字幕 | 五月婷婷丁香婷婷 | 欧美精品亚洲精品 | 天天草天天干天天 | 久久大陆| 99re久久 | 亚洲电影一区二区 | 久久久久久a女人 | 国产四区 | 最新黄色网址在线播放 | 久久久久久久国产精品 | 日本五月婷婷 | 日韩电影a | 999久久国产 | 亚洲欧美精品久久 | 在线观看v片 | 神马久久久久久久久久 | 毛片网站在线 | 欧美成人性生活视频 | 国产免费一级特黄录像 | 日韩欧美一区二区视频 | 国产三级网站 | www.国产精品 | 国产成人综合在线 | 99精品国产高清一区二区麻豆 | 亚洲 欧美日韩 国产 中文 | 91免费电影 | 国偷自产av一区二区三区 | 一级欧美一级日韩片 | 欧美a在线看 | 亚洲a级| 操操网站 | 国产成人av综合 | a√天堂资源在线 | 欧美日韩精品在线观看 | 在线精品国产一区二区三区 | 在线视频三级 | 国产第一亚洲 | 午夜窝窝 | 激情99| 国产一级片儿 | 天天艹逼 | 欧美多人在线 | 九九综合九九 | 免费一二区 | av天天网 | 91精品福利 | 亚洲激情在线 | 国产精品不卡视频 | 日韩在线短视频 | 欧美日韩一区二区不卡 | 亚洲精品日韩综合观看成人91 | 国产一区二区视频在线观看 | 欧美一区二区三 | 国产女人爽到高潮免费视频 | 91视频日韩 | 亚洲激情在线观看 | 国产在线综合视频 | 国产另类一区 | 精品一区二区三区免费视频 | 午夜在线电影 | 亚洲国产高清高潮精品美女 | 第一色视频 | 欧美一区二区三区视频在线观看 | 欧美日韩久久精品 | 国偷自产av一区二区三区 | 亚洲精品综合在线 | 免费一区二区三区视频在线 | 高清国产一区二区三区 | 久久久久久亚洲一区二区三区蜜臀 | 亚洲小视频 | 日韩午夜电影 | 成人综合视频在线 | 久久爱综合网 | 日韩中文字幕免费观看 | 少妇精品久久久久久久久久 | 欧美精品久久久久久久久 | 一级黄色短片 | 国产3区| 亚洲一区二区三区免费视频 | 影音先锋亚洲精品 | 国产精品日韩欧美一区二区 | 狠狠的干 | 欧美成人高清视频 | 中文字幕日韩一区二区三区 | 国产精品99久久免费观看 | 成人亚洲精品 | www.国产在线 | 天天干天天去 | 亚洲第一福利视频 | 91精品午夜| 不卡一区二区三区四区 | 欧美精品一区二区三区四区 | 久久久国产精品入口麻豆 | 美日韩精品视频 | 亚洲一区欧美 | 欧美视频三级 | 黑人xxx视频| av国产精品| 激情国产| 一区在线不卡 | 久久久精品久久久 | 久久久久久久久久毛片 | 成人免费视频网 | 99青青草 | 亚洲一区高清 | 综合国产| 国产看片网站 | 久久久久免费精品视频 | 久久久91精品国产一区二区三区 | 国产亚洲视频在线观看 | 国产一区二区三区高清 | 国产福利一区二区三区视频 | 国产精品久久久久久久久久久新郎 | 国产精品久久久av | 国产成人精品免高潮在线观看 | 国产精品视频一二 | 欧美日本一区二区三区 | 一区二区三区在线播放 | 精品一区二区三区在线观看 | 中文一区 | 成人不卡| 在线高清av | 天天干狠狠干 | 久久影音先锋 | 亚洲在线电影 | 国产视频一区二区 |