是的,BeautifulSoup
对象的find_all()
方法返回的是一个由匹配的标签元素组成的列表。如果没有匹配的元素,返回一个空列表。
例如,以下代码查找文档中所有的<a>
标签元素:
from bs4 import BeautifulSoup
html_doc = """
<html>
<head>
<title>Test Page</title>
</head>
<body>
<a href="http://www.baidu.com">Baidu</a>
<a href="http://www.google.com">Google</a>
<a href="http://www.bing.com">Bing</a>
</body>
</html>
"""
soup = BeautifulSoup(html_doc, 'html.parser')
links = soup.find_all('a')
print(type(links)) # <class 'bs4.element.ResultSet'>
print(links) # [<a href="http://www.baidu.com">Baidu</a>, <a href="http://www.google.com">Google</a>, <a href="http://www.bing.com">Bing</a>]
可以看到,links
是一个ResultSet
对象,是一个由3个<a>
标签元素组成的列表。