当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python BeautifulSoup next_siblings属性用法及代码示例


在 Beautiful Soup 中,标签或字符串的 next_siblings 属性返回一个生成器,用于迭代同一父级下的所有后续标签和字符串。

例子

考虑以下 HTML 文档:

my_html = """
       <div>
             <p>Alex</p>
             <p>Bob</p>
       </div>
"""
soup = BeautifulSoup(my_html)

让我们获取 <p>Alex</p>next_siblings

p_alex = soup.find("p")
for s in p_alex.next_siblings:
       print(repr(s))



'\n'
<p>Bob</p>
'\n'
<p>Cathy</p>
'\n'

在这里,我们使用 repr(~) 方法来转义换行符,以便您可以显式看到 '\n' 而不是空行。为了解决这个问题,<p>Alex</p> next_sibling 是一个换行符,这对于那些希望看到 <p>Bob</p> 的人来说可能会感到惊讶。出现这样的结果是因为 <p>Alex</p><p>Bob</p> 之间存在换行符 \n

如果您只想访问下一个同级元素,那么更好的选择是调用 find_next_siblings() 方法:

p_alex = soup.find("p")
for s in p_alex.find_next_siblings():
       print(repr(s))



<p>Bob</p>
<p>Cathy</p>

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 BeautifulSoup | next_siblings property。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。