You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用BeautifulSoup提取空class的span标签内的文本?

问题:提取空class的span标签内的数字内容

我是Python新手,正在学习Python并做个人项目,现在遇到技术问题:需要从<span class=""><b>0</b>标签中提取数字0,但因为该span标签的class为空,试了多种代码都没法获取到对应内容。


当前代码

import requests
r = requests.get("link allowed to write?")
from bs4 import BeautifulSoup 
doc=BeautifulSoup(r.text, "html.parser")


for i in doc.select(".no-change"):
    for a in i.select(".dib"):
        print(a.find_all('span', class_=''))

运行输出

[<span class="">
      <b class="bg-green">2</b>
      <span>S</span>
 </span>,
 <span>S</span>,
 <span class="">
      <b>0</b>
      <span>U</span>
 </span>,
 <span>U</span>,
 <span class="">
      <b class="bg-red">1</b>
      <span>N</span>
 </span>, 
 <span>N</span>, 
 <span>
     <span class="icon-ball fs15 pr0 pl10" title="Torverhältniss">
     </span> 
     <span>5:5</span>
</span>,
<span>5:5</span>]

期望实现

示例代码

import requests
r = requests.get(" -- ")
from bs4 import BeautifulSoup 
doc=BeautifulSoup(r.text, "html.parser")

print(doc.select_one(".bg-green").text)

期望输出

2

我已经尝试了多种代码,希望能得到可行的解决方案。


解决方案

从你的输出结果可以看到,目标数字0在空class的span标签下的无class属性的b标签里,你可以通过以下两种方式提取:

方法1:精准定位目标元素

利用CSS选择器直接定位到符合条件的元素,一步提取文本:

import requests
from bs4 import BeautifulSoup 

r = requests.get("你的目标链接")
doc = BeautifulSoup(r.text, "html.parser")

# 选择.no-change下的.dib元素内、空class的span,且该span包含无class的b标签
target_b = doc.select_one(".no-change .dib span[class=''] > b:not([class])")
if target_b:
    print(target_b.text)  # 输出:0

方法2:遍历筛选

如果需要处理多个类似元素,可以遍历所有空class的span,筛选出符合条件的b标签:

import requests
from bs4 import BeautifulSoup 

r = requests.get("你的目标链接")
doc = BeautifulSoup(r.text, "html.parser")

# 遍历所有符合层级的空class span
for span in doc.select(".no-change .dib span[class='']"):
    b_tag = span.find("b")
    # 筛选出没有class属性的b标签(对应数字0的情况)
    if b_tag and not b_tag.get("class"):
        print(b_tag.text)  # 输出:0

说明

你之前的代码只是找到了空class的span标签,但没有进一步提取其中的b标签文本。上面的两种方法都是先定位到包含目标数字的b标签,再获取其.text内容。


内容的提问来源于stack exchange,提问作者Süle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 15:43:15