BeautifulSoup库有很多属性,上篇文章我们也已经介绍过,但如果你用的多了,你会发现,其实学会其中几个功能,你就完全掌握了这个库。本篇文章我主要介绍一下find() 和 find_all()函数,如果想了解其他一些不常用的功能,可以自行百度。
而本文介绍的是一个用标签的属性和内容来获取内容的功能
find() 和 find_all()函数可以说是两个函数,也可以说是一个函数。为什么呢?其实这两个函数的参数基本上一样,让他们产生区别的就是limit这个参数,这个参数是范围限制参数,可以控制你find的范围,而find()就是find_all()的limit参数为1时的特殊形式。因此,由于这个原因,这两个函数的唯一区别也就显而易见了:
唯一区别:*find()返回的是第一个匹配的标签结果
*find_all()返回的是所有匹配结果的列表
除了区别,剩下的那就都相似了,接下来将以find_all()函数为例进行讲解:
find_all(tag, attributes, recursive, text, limit, keywords)
注:find_all() 和 findAll()函数是一样的
1.标签参数(tag)
可以通过传一个标签的名称或多个标签的名称组成的python列表形式来做标签参数;
格式:
一个------”tag“
多个------{"tag1","tag2",`````}
示例:
2.属性参数(attributes)
定义:是用一个python字典封装一个标签的若干属性和对应的属性值,注意是对一个标签的属性,所以一定要指明这个标签
作用:更好的区分众多相同的标签
格式:(”tag“,{"属性","属性值"}
示例:
3.递归参数(recursive)
默认----true
flase---只查找文档的一级标签
4.文本参数(text)
定义:用标签内容匹配,注意必须是全部内容
格式:(text = "文本内容")
示例:
5.关键词参数(keyword)
定义:选择具有指定属性的标签
格式:(属性=”属性值“)
示例:
6.范围限制参数(limit)
来源:CSDN
作者:鞋靠人生
链接:https://blog.csdn.net/qq_38329811/article/details/77112071