beautifulsoup4教程(四)css选择器
2019-02-02 12:32
176 查看
beautifulsoup4教程(一)基础知识和第一个爬虫
beautifulsoup4教程(二)bs4中四大对象
beautifulsoup4教程(三)遍历和搜索文档树
beautifulsoup4教程(四)css选择器
六、CSS选择器
6.1 通过标签名查找
print soup.select('title') print soup.select('a') print soup.select('b') result: [<title>The Dormouse's story</title>] [<a class="sister" href="http://example.com/elsie" id="link1"><!-- Elsie --></a>, <a class="sister" href="http://example.com/lacie" id="link2">Lacie</a>, <a class="sister" href="http://example.com/tillie" id="link3">Tillie</a>] [<b>The Dormouse's story</b>]
6.2 通过类名查找
print soup.select('.story') result: [<p class="story">Once upon a time there were three little sisters; and their names were\n<a class="sister" href="http://example.com/elsie" id="link1"><!-- Elsie --></a>,\n<a class="sister" href="http://example.com/lacie" id="link2">Lacie</a> and\n<a class="sister" href="http://example.com/tillie" id="link3">Tillie</a>;\nand they lived at the bottom of a well.</p>, <p class="story">...</p>]
6.3 通过id名查找
print soup.select('#link1') result: print soup.select('#link1')
6.4 组合查找
多个过滤条件需要用空格隔开,从前往后是逐层筛选,选择器作用的不是 同一个结点。
print soup.select('p #link1') print soup.select('a #link1') result: [<a class="sister" href="http://example.com/elsie" id="link1"><!-- Elsie --></a>] []
通过下面这种方式会更好理解
print soup.select('p >#link1') print soup.select('a >#link1') result: [<a class="sister" href="http://example.com/elsie" id="link1"><!-- Elsie --></a>] []
6.5 属性查找
print soup.select('p >a') print soup.select('p >a[href="http://example.com/tillie"]') result: [<a class="sister" href="http://example.com/elsie" id="link1"><!-- Elsie --></a>, <a class="sister" href="http://example.com/lacie" id="link2">Lacie</a>, <a class="sister" href="http://example.com/tillie" id="link3">Tillie</a>] [<a class="sister" href="http://example.com/tillie" id="link3">Tillie</a>]
6.6 列表迭代
- 通过上述方法返回的都是列表,是可迭代对象。
print soup.select('p >a') print type(soup.select('p >a')) print "====" print soup.select('p >a')[0] print "====" for a in soup.select('p >a'): print a result: [<a class="sister" href="http://example.com/elsie" id="link1"><!-- Elsie --></a>, <a class="sister" href="http://example.com/lacie" id="link2">Lacie</a>, <a class="sister" href="http://example.com/tillie" id="link3">Tillie</a>] <type 'list'> ==== <a class="sister" href="http://example.com/elsie" id="link1"><!-- Elsie --></a> ==== <a class="sister" href="http://example.com/elsie" id="link1"><!-- Elsie --></a> <a class="sister" href="http://example.com/lacie" id="link2">Lacie</a> <a class="sister" href="http://example.com/tillie" id="link3">Tillie</a>
相关文章推荐
- anaconda安装beautifulsoup(64位机+win7+anaconda4.3.30+beautifulsoup4-4.6.0)图文教程
- w3school在线教程之———【css选择器】
- 史上最全的BeautifulSoup解析(基本选择器,标准选择器,css选择器)
- BeautifulSoup学习之CSS选择器
- css教程-03-CSS选择器之简单选择器
- DIV+CSS基础教程:盒模型、块状元素与内联元素、CSS选择器
- python BeautifulSoup 抓取python中文开发者社区中的所有高级教程
- beautifulsoup之CSS选择器
- 【教程】html+css零基础入门教程之CSS选择器(二十五)
- CSS教程之css选择器 、属性、值
- 【教程】BeautifulSoup中使用正则表达式去搜索多种可能的关键字
- 【教程】Python中第三方的用于解析HTML的库:BeautifulSoup
- 讲给Android程序员看的前端教程(11)——CSS选择器(1)
- python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
- 讲给Android程序员看的前端教程(12)——CSS选择器(2)
- beautifulsoup之CSS选择器
- 讲给Android程序员看的前端教程(13)——CSS选择器(3)
- 教程:设计中最常用的五类CSS选择器
- 参考教程,练习BeautifulSoup实例
- Python BeautifulSoup4 select方法执行css选择器