黄a在线观看-黄a在线-黄a大片-黄色片在线看-黄色毛片免费-黄色大片网站

您的位置:首頁技術文章
文章詳情頁

Python爬蟲進階之Beautiful Soup庫詳解

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

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

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

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

二、Beautiful Soup庫安裝

目前,Beautiful Soup 的最新版本是 4.x 版本,之前的版本已經停止開發,這里推薦使用 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。□ 因此,包本身的名稱和我們使用時導入包名稱并不一定是一致的。

三、Beautiful Soup 庫解析器

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

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

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

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

Python爬蟲進階之Beautiful Soup庫詳解

獲取 title 節點,查看它的類型

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:解析內容soup = BeautifulSoup(html, ’lxml’)print(soup.prettify())print(soup.title.string)

執行結果如下所示:

The Dormouse’s story

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

選擇元素

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

運行結果

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

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

調用 name 屬性獲取節點的名稱

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

運行結果

title

調用 attrs 獲取所有屬性

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

運行結果

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

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

簡單獲取屬性的方式

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

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

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

調用 string 屬性獲取節點元素包含的文本內容

print(’調用 string 屬性獲取節點元素包含的文本內容’)print(soup.p.string)

嵌套選擇

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

運行結果

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

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

調用 children 屬性,獲取它的直接子節點

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:解析內容soup = BeautifulSoup(html, ’lxml’)# 獲取孩子結點print(soup.p.children)# 遍歷孩子結點# 將列表中元素與下標枚舉為元組# 獲取p標簽下的孩子標簽for i, child in enumerate(soup.p.children): print(i, child)

執行結果

<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.

從上述示例運行結果可以看到,調用 children 屬性,返回結果是生成器類型。用 for 循環輸出相應的內容。

調用 parent 屬性,獲取某個節點元素的父節點

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:解析內容soup = BeautifulSoup(html, ’lxml’)# 獲取父結點print(soup.a.parent)

運行結果

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

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

調用 parents 屬性,獲取某個節點元素的祖先節點

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:解析內容soup = BeautifulSoup(html, ’lxml’)# 獲取父結點print(type(soup.a.parents)) # 獲取類型print(list(enumerate(soup.a.parents)))

運行結果

[(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>)]

調用 next_sibling 和 previous_sibling 分別獲取節點的下一個和上一個兄弟元素

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:解析內容soup = BeautifulSoup(html, ’lxml’)# 獲取下一個結點的屬性print(’Next Sibling’, soup.a.next_sibling)print(’Previous Sibling’, soup.a.previous_sibling)

運行結果

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

五、方法選擇器

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

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

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

語法格式如下:

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

find_all 方法傳入 name 參數,根據節點名來查詢元素

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:解析內容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)

結果如下

[<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

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

find_all 方法傳入 attrs 參數,根據屬性來查詢

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:解析內容soup = BeautifulSoup(html, ’lxml’)print(soup.find_all(attrs={’id’: ’list-1’}))print(soup.find_all(attrs={’name’: ’elements’}))

結果如下

[<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 參數,參數的類型是字典類型。比如,要查詢 id 為 list-1 的節點,可以傳入 attrs={‘id’: ‘list-1’}的查詢條件,得到的結果是列表形式,包含的內容就是符合 id 為 list-1 的所有節點。符合條件的元素個數是 1,長度為 1 的列表。對于一些常用的屬性,比如 id 和 class 等,可以不用 attrs 來傳遞。比如,要查詢 id 為 list-1 的節點 ,可以直接傳入 id 這個參數。

示例如下:

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

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

find_all 方法根據文本來查詢

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

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:解析內容soup = BeautifulSoup(html, ’lxml’)print(soup.find_all(text=re.compile(’link’)))

運行結果

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

上述示例有兩個 a 節點,其內部包含文本信息。這里在 find_all()方法中傳入 text 參數, 該參數為正則表達式對象,結果返回所有匹配正則表達式的節點文本組成的列表。除了 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:解析內容soup = BeautifulSoup(html, ’lxml’)# 獲取標簽名為ul的標簽體內容print(soup.find(name=’ul’))# 獲取返回結果的列表print(type(soup.find(name=’ul’)))# 查找標簽中class是’list’print(soup.find(class_=’list’))

結果如下

<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 方法返回結果不再是列表形式,而是第一個匹配的節點元素,類型依然是 Tag 類型。

六、CSS 選擇器

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

CSS相關知識

#element: id選擇器.

element:類選擇器

tag tag:派生選擇器

通過依據元素在其位置的上下文關系來定義樣式,你可以使標記更加簡潔。

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:解析內容soup = BeautifulSoup(html, ’lxml’)# 獲取class=panel標簽下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)

結果如下

[<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 選擇器,返回的結果均是符合 CSS 選擇器的節點組成的列表。 例如,select(‘ul li’)則是選擇所有 ul 節點下面的所有 li 節點,結果便是所有的 li 節點組成的列表。要獲取文本,當然也可以用前面所講的 string 屬性。此外,還有一個方法,那就是 get_text()。

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

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 精品国产av 无码一区二区三区 | 久久久久无码国产精品不卡 | 欧美日韩专区 | 精品无码黑人又粗又大又长 | 91亚洲精品久久久蜜桃网站 | 欧美黄色免费在线观看 | 成人性生交大片 | 毛片网站免费观看 | juliaann战黑人 | 好爽…又高潮了免费毛片 | 成年人在线免费观看网站 | 欧美经典一区 | 99免费视频 | 国产成人久久精品激情 | 国产激情久久 | 欧美另类极品videosbest最新版本 | 国产第一页精品 | 免费看成人哺乳视频网站 | 古装淫片在线观看 | 天堂一区二区三区 | 91久久在线| 国产chinesehd精品露脸 | 久久精品国产亚洲77777 | 国产少妇露脸精品 | 欧洲a级片 | eeuss国产一区二区三区 | hd最新国产人妖ts视频 | 国内揄拍国内精品人妻 | 欧美精品在线免费 | 欧美中文字幕在线 | 国产精品视频一区二区三区不卡 | 国产色播av在线 | 人妻熟人中文字幕一区二区 | 亚洲人黄色片 | 欧美激情首页 | 美女网站全黄 | 国产午夜啪啪 | 午夜香蕉网 | 午夜黄色av| 男女做爰全过程免费的软件 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 国产成人麻豆亚洲综合无码精品 | 免费在线播放毛片 | 日韩在线不卡 | 久久久精品在线观看 | 久草视频一区 | 黄色1级毛片| 99在线观看免费视频 | 亚洲精品一区av在线播放 | 草草影院在线观看视频 | 黄色大片网 | 久草视频免费 | 伊人av在线免费观看 | 九九热精品国产 | 一区二区三区四区五区视频 | 国产成人精品综合在线观看 | 国产二级av | av在线资源站 | 精品视频久久久久久久 | 欧美人体做爰大胆视频 | 午夜免费小视频 | 99蜜桃臀久久久欧美精品网站 | 国产免费午夜福利757 | 国产懂色av| 久久精品道一区二区三区 | 亚洲五十路 | 亚洲精品一区二区三区99 | 日韩一级片免费在线观看 | jzzjzz日本丰满少妇 | 国产一级做a爰片在线看免费 | 女女百合高h喷汁呻吟玩具 女女互揉吃奶揉到高潮视频 | 亚洲精品www久久久久久软件 | 最新中文字幕视频 | 99久久人人爽亚洲精品美女 | 国产91av在线 | 久草网视频 | 亚洲自拍另类 | 无码专区久久综合久中文字幕 | 色婷在线 | 国产视频一二区 | 中字幕一区二区三区乱码 | 婷婷综合久久中文字幕蜜桃三电影 | 精品国产乱码久久久久久浪潮 | 亚洲免费在线播放 | 在线观看的av | 两性色午夜免费视频 | 性欧美丰满熟妇xxxx性 | 私人av | 欧美日韩a v | 亚洲自啪 | 国产精品视频一区二区三区 | 欧美亚洲精品一区二区 | 国产一区日本 | 精品xxxx户外露出视频 | 日韩精品99久久久久中文字幕 | 熟女少妇内射日韩亚洲 | 亚洲欧洲精品一区二区三区 | 春日野结衣av | 免费一级全黄少妇性色生活片 | 国产精品久久毛片 | 好吊妞视频这里有精品 | 五月婷婷久久久 | 免费色网址 | 色综合天天综合网国产成人网 | 9l视频自拍九色9l视频大全 | √天堂中文在线 | 午夜视频在线观看吗 | 国产精品高潮露脸在线观看 | 国产 日韩 欧美 精品 | 男人的天堂在线观看av | 色狠狠av老熟女 | 无人区码一码二码w358cc | 一本本月无码- | 成人羞羞视频在线观看免费 | 欧美大尺度做爰啪啪床戏明星 | 中文字幕国产一区二区 | 亚洲一区二区三区含羞草 | 最新av女优| 国产极品jk白丝喷白浆图片 | 国产香蕉97碰碰碰视频在线观看 | 国产一级自拍视频 | av专区在线观看 | 人碰人操| 久久亚洲国产精品五月天婷 | 在线观看成人 | 在线观看免费av网址 | 亚洲成人午夜影院 | 日韩福利| 中国毛片在线观看 | 日本做爰吃奶全过程免 | 久久精品黄aa片一区二区三区 | 日韩欧美在线一区二区 | 强插女教师av在线 | 美女av免费 | 亚洲乱视频 | 午夜剧场成人 | 日日夜夜婷婷 | 在线看www| 岛国成人在线 | 亚洲中文字幕无码一区在线 | www狠狠爱| 男女久久久 | 午夜视频成人 | 国产精品豆花视频www | 夜夜嗨av一区二区三区中文字幕 | 国产精品久久久久久久久久久久久久 | 人人干在线 | 国产精品wwwdhxxx | 一级淫片a | 欧美成人影音 | 国产女无套免费网站 | 神马久久网站 | 136微拍宅男导航在线 | 91日批 | 97看片网| 综合欧美一区二区三区 | 毛片哪里看| 中国一级一级全黄 | 亚洲国产精品激情综合图片 | 久久国产精品免费一区二区三区 | 用舌头去添高潮无码视频 | 国产精品国产三级国产aⅴ下载 | 国产精品久久久久久久久久白浆 | 丁香婷婷综合激情五月色 | 国产精品免费看久久久 | 久草在线视频福利资源站 | 99国产精品久久久 | 免费国产黄网站在线观看可以下载 | 国产人妻鲁鲁一区二区 | 国产手机在线αⅴ片无码观看 | 理论视频在线观看 | 99国产精品一区 | 男女啪啪免费观看网站 | 国产在线精品拍揄自揄免费 | 婷婷伊人综合亚洲综合网 | 亚洲毛茸茸少妇高潮呻吟 | 91亚洲精华国产精华精华液 | 这里只有精品视频在线观看 | 欧美成人在线影院 | 3344国产精品免费看 | 后进极品圆润翘臀在线播放 | 国语自产偷拍精品视频 | 激情小说五月天 | 欧美亚洲影院 | 久久这里只有精品18 | 4438x亚洲 | 98精品国产高清在线xxxx天堂 | 四季久久免费一区二区三区四区 | 亚洲黄网在线观看 | 免费看成人哺乳视频网站 | 99精品国产综合久久久久五月天 | 99热在| 亚洲中文字幕无码av永久 | 亚洲天堂偷拍 | 国产成人av手机在线观看 | 中文在线字幕观看 | 国产看片网站 | 国产一区二区三精品久久久无广告 | 亚洲区免费中文字幕影片|高清在线观看 | 真实乱视频国产免费观看 | 97久久人人超碰国产精品 | 中文字幕一区二区三区在线视频 | 六月久久 | 99涩涩| 国产成人无码精品久久久免费 | 久久短视频 | 思思久久99热只有频精品66 | 欧美一级淫片免费视频魅影视频 | 成年人网站免费在线观看 | 国产精品―色哟哟 | 欧美一区二区三区啪啪 | 久久综合网av | wwwcom黄色| 婷婷激情网站 | 爱爱的网站 | 国产精品欧美一区乱破 | 国产91色在线 | 免费 | 91丨九色丨丰满人妖 | 免费丰满少妇毛片高清视频 | 国产精品99久久久久人中文网介绍 | 国产精品7777777 | 黄色网视频 | 欧洲女人牲交视频免费 | 中文日产乱幕九区无线码 | 台湾全黄色裸体视频播放 | 欧美高清视频一区二区 | 久久人人爽人人爽人人片 | 欧美一级特黄aaaaaaa什 | 久久成人高清 | 夜夜天天拍拍 | 97超碰人人澡人人爱学生 | 国产精品美女久久久久aⅴ国产馆 | 日本一区二区三区日本免费 | 成人精品免费视频在线观看 | 欧美精品欧美极品欧美激情 | 无码人妻h动漫 | 免费av成人 | 欧美videos最新极品 | 亚洲成人久久精品 | 日韩欧美国产三级 | 三级不卡视频 | 国产影片中文字幕 | 3级av | 三级毛片免费播放 | 国产sm主人调教女m视频 | 国产粉嫩高中好第一次不戴 | 久久精品国产免费 | 亚洲一区观看 | 亚洲精品丝袜久久久久久 | 国产女主播白浆在线观看 | 麻豆av免费观看 | 夜色影院在线观看 | 欧美日韩免费看 | 色婷婷国产精品免费网站 | 久久精品国产免费观看 | www.亚洲高清 | 中文字幕日韩精品在线观看 | 在线视频免费观看一区 | 免费在线日韩 | 亚洲国产第一区 | 亚色视频 | 91精品少妇偷拍99 | 久久精品视频网站 | 国产成人精品无码短视频 | 插吧插吧综合网 | av色图在线| 黄色一级大片免费看 | 欧美三级韩国三级少妇99 | 亚洲在线视频免费观看 | 伊人精品久久 | 四虎影城库| 久久精品免费网站 | 久久99热狠狠色精品一区 | 狠狠躁夜夜躁人人爽天天天天97 | 蜜桃视频一区二区三区在线观看 | 久久精品久久久久久噜噜老黄 | 日韩精品中文在线 | 欧美激情xxx| 中出乱码av亚洲精品久久天堂 | 秋霞午夜网 | 国产999精品成人网站 | 亚洲ⅴ国产v天堂a无码二区 | 少妇私密会所按摩到高潮呻吟 | 祥仔av免费一区二区三区四区 | 欧洲性开放大片 | 性插免费视频 | 欧美牲交a欧美牲交aⅴ免费真 | 好吊妞在线 | 国产欧美日韩二区 | 久久激情片 | 久久久久中文 | 天天综合网7799精品视频 | 夜夜嗨av一区二区三区四季av | 全黄一级裸片视频 | a视频免费在线观看 | 欧美一区二区免费视频 | 欧美白嫩嫩hd4kav | 黄色一级视频网 | 欧洲精品在线播放 | 丰满人妻熟妇乱又伦精品软件 | 成人一区二区三区四区 | 国产清纯白嫩初黑人高生在线观看 | 日韩成人在线视频 | 日韩欧美在线一区二区 | 中文字幕无线码 | 91精品国产手机 | 一个人看的www片免费高清视频 | 理伦少妇片一级 | 国产精品一区二区三区在线 | 色婷婷97| 精品欧美久久久 | 国产最爽的乱淫视频国语对白 | 国产在线精品成人免费怡红院 | 欧美一区二区三区爽爽爽 | av小说天堂网 | www.久久精品视频 | 日韩伦理一区二区 | 91精品国产成人 | 国产精品久久久久久久久潘金莲 | 蜜臀av免费一区二区三区 | 欧美性猛少妇xxxxx免费 | 特大黑人娇小亚洲女mp4 | 中文字幕制服狠久久日韩二区 | 在线观看三级视频 | www夜夜操| 国产午夜成人av在线播放 | 蜜臀久久99精品久久久无需会员 | 日韩精品一二区 | 少妇久久精品 | 夜夜爽天天干 | 国产精品久久久久久久久久免费看 | 亚洲国产成人久久精品大牛影视 | 51自拍视频在线观看 | 国色天香网www在线观看 | 免费成人国产 | 午夜婷婷国产麻豆精品 | 午夜小福利 | 久久久久久九九99精品 | jizz俄罗斯| 日韩视频福利 | 亚洲影院中文字幕 | 伊人久久亚洲 | 欧美特级黄色录像 | 亚洲国产毛片aaaaa无费看 | 久久精品国产69国产精品亚洲 | 欧美日韩国产精品激情在线播放 | 国产av人人夜夜澡人人爽麻豆 | 99精品视频一区二区三区 | 成人精品一区二区三区电影 | 7777欧美日激情日韩精品 | 91五月色国产在线观看 | 国产喷水福利在线视频 | 肉色丝袜足j视频国产 | 成熟了的熟妇毛茸茸 | 日本欧美久久久 | 黑人操亚洲人 | 久久99热狠狠色精品一区 | 久久9999久久免费精品国产 | 少妇搡bbbb爽毛片无 | 爱搞逼综合 | 久久人人爽人人爽人人片ⅴ | 天堂资源在线播放 | 黄色网页免费观看 | 国产精品一区在线播放 | 噼里啪啦高清在线观看 | 狠狠躁日日躁夜夜躁 | 国产免费人成xvideos视频 | 黄频在线观看 | 国产伦精品一区二区三区视频我 | 91精品一久久香蕉国产线看观看新通道出现 | 欧美精品一区二区三区蜜桃视频 | 久久久国产乱子伦精品 | 日日射夜夜 | 无套内谢大学处破女www小说 | 97国产suv精品一区二区62 | 久久久精品国产免费观看一区二区 | 伊人久久视频 | av高清在线 | 国产18毛片 | 国产精品a无线 | www.国产精品视频 | 白浆影院 | 韩国日本在线观看 | 日本中文字幕在线免费观看 | 国产精品永久久久久久久www | 韩国成人免费视频 | 青青草视频播放 | 伊人五月天| 欧美顶级少妇做爰hd | 大白屁股一区二区视频 | 亚洲男人在线天堂 | 亚洲欧美日韩另类精品一区二区三区 | 亚洲欧美日韩在线一区 | 韩产日产国产欧产 | 91p在线观看 | 国产乱淫av麻豆国产免费 | 四虎影视成人永久免费观看视频 | 中文字幕第66页 | 国产欧美一区二区三区国产幕精品 | 60欧美老妇做爰视频 | 一级做a爰片性色毛片99 | 欧美在线一区二区三区四区 | 粗大的内捧猛烈进出在线视频 | 精品国产亚洲一区二区三区 | 五月天激情国产综合婷婷婷 | 中文字幕亚洲无线码在线一区 | 乱lun合集小可的奶水 | 成人激情开心网 | 亚洲中文无码av永久不收费 | 欧美色视频在线播放 | 真多人做人爱视频高清免费 | 在线观看亚洲国产 | 中文字幕一区在线观看视频 | 男女午夜激情视频 | 欧美激情首页 | 邻居少妇张开双腿让我爽一夜图片 | 成人午夜一区二区 | 久久国产精品99久久久久久老狼 | 美女mm131爽爽爽 | 日本少妇全身按摩做爰5 | 亚洲老妈激情一区二区三区 | www精品美女久久久tv | 黄色链接视频 | 一级特黄特色的免费大片视频 | 日本va在线视频播放 | 国产精品后入内射日本在线观看 | 亚洲午夜久久久久久久国产 | 亚洲午夜小视频 | 国人天堂va在线观看免费 | 岛国av在线免费观看 | 亚洲好看站 | 国产欧美另类久久久精品图片 | 麻豆乱淫一区二区三区 | 麻豆福利视频 | 日本公与丰满熄的 | 小明看欧美日韩免费视频 | 久久久嫩草| 久久久不卡国产精品一区二区 | 国产无套精品一区二区 | 国产亚洲精品成人aa片新蒲金 | 青青操精品 | 亚洲小说图区综合在线 | 五月婷婷免费视频 | 久久久久久久久久久大尺度免费视频 | 日韩综合在线视频 | 白白色2012年最新视频 | 国产亚洲精品久久久久久牛牛 | 97精品国产手机 | 高柳家动漫在线观看 | 欧美性xxxx狂欢老少配 | 日本视频在线免费观看 | 色老板精品视频在线观看 | 色欲av无码一区二区人妻 | 欧日韩在线| 成人久久视频 | 风韵少妇spa私密视频 | aaa级片| 三级第一页 | 婷婷精品视频 | 欧美成aⅴ人高清免费 | 欧美色图综合网 | 国产三级久久久精品麻豆三级 | 永久黄网站色视频免费 | 一级黄色片网站 | 亚洲精品一区二区三区大桥未久 | 国产精品久久久久久久久久免费看 | 图片区 小说区 区 亚洲五月 | 探花视频在线版播放免费观看 | 亚洲色偷偷av男人的天堂 | 91在线一区 | 51国产偷自视频区视频小蝌蚪 | 国产一级免费片 | 婷婷丁香亚洲 | 久久久久久久久久久久久久久久久久久 | 亚洲最大av资源站无码av网址 | 亚洲综合不卡 | 国产一区二区三区在线观看 | 乌克兰丰满少妇毛片 | 久久爱水蜜桃69 | 男人添女荫道口视频a | 国产玉足榨精视频在线观看 | 国产真实乱对白精彩久久 | 免费三级网址 | 日韩www| 亚洲精品毛片一区二区三区 | 好紧好湿太硬了我太爽了视频 | 日韩毛片在线视频x | 国产免费一级片 | 男女做爰猛烈吃奶摸九色 | 色翁荡息又大又硬又粗又爽 | 久久看视频 | 国产成人无码一区二区在线观看 | 夜夜偷影视 | 久操视频在线播放 | 四季av一区二区凹凸精品 | 黄色生活毛片 | 亚洲国产三级在线观看 | 青青草视频在线免费观看 | 久久免费看少妇a高潮一片黄特 | 中文字幕丰满人孑伦 | 国产男女猛烈无遮挡a片漫画 | 国产剧情一区在线 | 国产女人成人精品a区 | 欧美第一视频 | .精品久久久麻豆国产精品 国产精品久久毛片 | 暴力强奷美女孕妇视频 | 欧美国产日产一区二区 | 忘忧草社区在线www 内射老阿姨1区2区3区4区 | 亚洲一区二区三区日本 | 寂寞骚妇被后入式爆草抓爆 | 日韩中文字 | 日韩欧美视频免费在线观看 | 日本爽爽爽爽爽爽在线观看免 | 男人全程不遮挡撒尿视频 | 内射中出日韩无国产剧情 | 性欧美亚洲xxxx乳在线观看 | 久久精品国产免费观看 | 一区免费在线观看 | 黄色大片一级片 | 美日韩av在线 | 日韩综合一区 | 国产免费内射又粗又爽密桃视频 | 欧美女人交配视频 | 特大黑人巨交吊性xxxxhd | 巨胸狂喷奶水视频www网站免费 | 亚洲国产精品丝袜国产自在线 | 性色av无码一区二区三区人妻 | 国产精品人八做人人女人a级刘 | √天堂资源在线中文最新版 | 精品少妇一区二区三区在线观看 | 寡妇亲子伦一区二区三区四区 | 亚洲老妇色熟女老太 | 国产成人精品亚洲日本在线观看 | 一级特黄aaa | 超碰人人人 | 2020国产精品视频 | 18pao国产成人免费视频 | 夜色资源网 | 天天操天天撸 | 欧美一级性视频 | 国产精品一区二 | 丁香花小说手机在线观看免费 | 欧美又粗又长又爽做受 | 欧美性色视频 | 懂色av一区二区三区四区五区 | 可以在线观看的黄色 | 亚洲国产精品综合久久网各 | 特级a级片| 麻豆天美传媒毛片av88 | av在线亚洲男人的天堂 | 亚洲一区二区二区久久成人婷婷 | 理论片中文字幕在线观看 | 日本一级爽快片野花 | 亚洲最大成人网站 | 亚洲女人av | 成年视频免费高清在线看 | 国产欧美另类精品久久久 | 久久久噜噜噜久久中文福利 | 国产精品无码无卡无需播放器 | 国产精品国产精品国产专区不卡 | 人人爽人人做 | 久久免费精品 | 夜夜躁很很躁日日躁麻豆 | 久久亚洲国产精品日日av夜夜 | 999久久久无码国产精品 | 日韩福利在线视频 | 日本一区二区三区在线播放 | 国产精品久久久久9999小说 | 国产精品久久久久久久一区二区 | 亚洲免费视频在线 | 在线观看av不卡 | 91av资源在线 | 亚洲激情一区二区 | 中文国产一区 | 99久久精品费精品国产一区二区 | 免费看片免费播放国产 | 国产白嫩美女在线观看 | 无套内谢的新婚少妇国语播放 | 亚洲欧美婷婷六月色综合 | 成年女人午夜毛片免费视频 | 国产精品天天在线午夜更新 | 日日日干| 97超碰人 | 久久精品国产亚洲5555 | 久久久久成人精品无码中文字幕 | 免费国产黄网站在线观看 | 老司机av福利 | 成人免费精品 | 欧美综合一区 | 亚洲涩涩| 国产色爽 | 香蕉久久精品日日躁夜夜躁夏 | 女人扒开屁股桶爽30分钟 | 国产精品点击进入在线影院高清 | 亚洲国产综合色产精品色在线 | 亚洲福利网址 | av永久 | av色欲无码人妻中文字幕 | 欧美成人黄色片 | 美女黄色毛片视频 | 在线不卡视频 | 极品少妇hdxx麻豆hdxx | 国自产拍偷拍精品啪啪模特 | 免费三级大片 | 色中色成人导航 | 天天摸日日摸狠狠添 | 嫩草精品福利视频在线观看 | www.-级毛片线天内射视视 | 亚洲色无码中文字幕 | 免费精品99久久国产综合精品 | 久久艹精品视频 | www国产成人免费观看视频,深夜成人网 | 欧美日韩一区二区在线视频 | 亚洲熟妇无码乱子av电影 | 性欧美www|