在Beautiful Soup 中,可以使用 .previous_sibling 方法获取元素的上一个兄弟节点。

例如,如果你想获取以下 HTML 代码中 <b> 标签的上一个兄弟节点的内容:

<p>这是一个段落。</p>
<b>这是一个粗体文本。</b>
<p>另一个段落。</p>

可以使用以下代码:

from bs4 import BeautifulSoup

html = '''
<p>这是一个段落。</p>
<b>这是一个粗体文本。</b>
<p>另一个段落。</p>
'''

soup = BeautifulSoup(html, 'html.parser')

bold_tag = soup.find('b')
previous_sibling = bold_tag.previous_sibling

print(previous_sibling.text)  # 输出:'这是一个段落。' 

.previous_sibling 方法返回一个 Tag 对象,你可以使用 .text 属性获取其文本内容。

注意:

  • 如果元素没有上一个兄弟节点,.previous_sibling 方法将返回 None。
  • .previous_sibling 方法返回的是元素的上一个兄弟节点,而不是其父节点。

原文地址: https://www.cveoy.top/t/topic/oEIh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录