搜索文档树
过滤器
过滤器可以为bs对象提供的搜索API的参数提供更好的描述
- 字符串
soup.find_all(name="a")
- 正则表达式
soup.find_all(name=re.compile(r"",re.S|re.I))
- 列表
soup.find_all(name=["a","div"])
- True
soup.find_all(True)
- 方法
find_all
find_all(name,attrs,recursive,string,**kwargs)
find_all()方法搜索当前tag的所有tag子节点,并判断是否符合过滤器的条件
参数
- name参数:可以查找所有名字为name的tag,字符串对象会被自动忽略掉
- keyword参数:如果关键字参数
不在搜索内置的参数名
,搜索时会把该参数当作指定名字tag
的属性
来搜索 - 按CSS搜索:在find_all中,class_表示tag class属性
- string参数:可以搜索文档中的字符串内容
- limit参数,使用 limit 参数限制返回结果的数量
- recursive参数,检索当前tag的所有子孙节点,如果只想搜索tag的直接子节点,可以使用参数 recursive=False .