使用BeautifulSoup库的find()或find_all()方法,加上text参数即可查找包含特定文本的标签。代码示例如下:
from bs4 import BeautifulSoup
html = 'Hello, World!
Hello, BeautifulSoup!
'
soup = BeautifulSoup(html, 'html.parser')
# 查找包含'BeautifulSoup”的p标签
p = soup.find('p', text='Hello, BeautifulSoup!')
print(p)
# 查找所有包含'Hello”的标签
tags = soup.find_all(text='Hello')
print(tags)
输出结果:
Hello, BeautifulSoup!
['Hello, World!', 'Hello, BeautifulSoup!']
其中,find()方法返回第一个匹配的标签,如果没有找到则返回None;find_all()方法返回所有匹配的标签组成的列表。text参数可以接收字符串、正则表达式或函数,表示要查找的文本。