一、搜索文档树
(1)limit参数:
可以传入一个limit参数来限制返回的数量,当搜索出的数据量为5,而设置了limit=2时,此时只会返回前2个数据
2、find()
find()将返回符合条件的第一个Tag,有时我们只需要或一个Tag时,我们就可以用到find()方法了。当然了,也可以使用find_all()方法,传入一个limit=1,然后再取出第一个值也是可以的,不过未免繁琐。
二、CSS选择器
BeautifulSoup支持发部分的CSS选择器,在Tag获取BeautifulSoup对象的.select()方法中传入字符串参数,即可使用CSS选择器的语法找到Tag:
2.1、通过标签名查找
print(bs.select('title'))
print(bs.select('a'))
2.2、通过类名查找
print(bs.select('.mnav'))
2.3、通过id查找
print(bs.select('#u1'))
2.4、组合查找
print(bs.select('div .bri'))
2.5、属性查找
print(bs.select('a[class="bri"]'))
print(bs.select('a[href="http://tieba.baidu.com"]'))
2.6、直接子标签查找
t_list = bs.select("head > title")
print(t_list)
2.7、兄弟节点标签查找
t_list = bs.select(".mnav ~ .bri")
print(t_list)
2.8、获取内容
t_list = bs.select("title")
print(bs.select('title')[0].get_text())
析器,lxml 解析器更加强大,速度更快,推荐使用lxml 解析器。