在BeautifulSoup中,可以使用find方法来找到第一个匹配的元素。但有时需要找到第一个匹配元素后面的元素。例如,我们已经找到了一个table元素,现在需要找到紧随其后的p元素。
为了解决这个问题,可以使用find_next_sibling方法。该方法返回下一个兄弟元素,即与当前元素在同一父元素下的下一个元素。如果没有下一个兄弟元素,则返回None。
以下是一个示例代码,查找名为“example_table”的表格元素后的第一个段落元素:
from bs4 import BeautifulSoup
html = """
row 1, cell 1 |
row 2, cell 1 |
Next paragraph
"""soup = BeautifulSoup(html, 'html.parser') table = soup.find('table', {'id': 'example_table'}) next_p = table.find_next_sibling('p')
print(next_p.text)
输出结果为:“Next paragraph”