Вы можете использовать .find
с аргументом text
, а затем использовать findParent
для родительского элемента.
Пример:
from bs4 import BeautifulSoup
s="""<div> <b>Ignore this text</b>Find based on this text </div>"""
soup = BeautifulSoup(s, 'html.parser')
t = soup.find(text="Find based on this text ")
print(t.findParent())
Выход:
<div> <b>Ignore this text</b>Find based on this text </div>