【问题标题】:How to extract br text from span element?如何从 span 元素中提取 br 文本?
【发布时间】:2025-12-23 04:05:11
【问题描述】:

使用Beautiful Soup v4,我有一个span,如下:

<span style="color: grey;">32.44 MB<br/>10454 Downloads<br/>35:25 Mins<br/>128kbps Stereo</span>

我想单独提取 br 元素的文本。我该怎么做?

【问题讨论】:

  • 这个 html 是否正确?开头的br 标签在哪里?
  • @Sushil 这就是那里的东西;现在每个人都是网络开发人员,所以...
  • 哈哈哈...我能理解

标签: python html beautifulsoup tags


【解决方案1】:

试试这个:

from bs4 import BeautifulSoup

txt = '''<span style="color: grey;">32.44 MB<br/>10454 Downloads<br/>35:25 Mins<br/>128kbps Stereo</span>'''

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

for tag in soup.select('span br'):
    print(tag.next)

输出:

10454 Downloads
35:25 Mins
128kbps Stereo

【讨论】:

    【解决方案2】:

    虽然这可能不是正确的方法,但如果你使用 span 作为字符串,你可以像这样提取单词:

    user_input = '<span style="color: grey;">32.44 MB<br/>10454 Downloads<br/>35:25 Mins<br/>128kbps Stereo</span>'.split( "<br/>" )
    WordList = []
    for word in user_input:
        if ">" in word:
            word = word[word.index(">")+1:]
        if word:
            WordList.append( [word] )
    print(WordList)
    

    【讨论】: