要使用BeautifulSoup搜索多个标签,可以使用find_all()方法,并将多个标签名称作为参数传递给它。
下面是一个使用BeautifulSoup搜索多个标签的代码示例:
from bs4 import BeautifulSoup
html = '''
Heading 1
Paragraph 1
Heading 2
Paragraph 2
Heading 3
Paragraph 3
'''
soup = BeautifulSoup(html, 'html.parser')
# 使用find_all()方法搜索'h1'和'h2'标签
headings = soup.find_all(['h1', 'h2'])
for heading in headings:
print(heading.text)
# 使用find_all()方法搜索'p'标签
paragraphs = soup.find_all('p')
for paragraph in paragraphs:
print(paragraph.text)
输出结果为:
Heading 1
Heading 2
Paragraph 1
Paragraph 2
Paragraph 3
在上面的代码中,我们首先导入了BeautifulSoup库。然后,将HTML代码赋值给一个变量。创建BeautifulSoup对象时,指定解析器为'html.parser'。
接下来,我们使用find_all()方法搜索'h1'和'h2'标签,并将它们作为参数传递给find_all()方法。然后,使用for循环遍历搜索结果,并打印标签的文本内容。
同样地,我们也可以使用find_all()方法搜索'p'标签,并使用for循环遍历搜索结果,并打印标签的文本内容。