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

如何用Beautiful Soup解析非标准HTML标签中的scoreA属性值?

用Beautiful Soup解析非标准HTML标签的属性值

Beautiful Soup对自定义HTML标签的处理和标准标签完全一致,直接按常规方式操作就能拿到你要的scoreA值,具体步骤如下:

  1. 导入BeautifulSoup库
  2. 定义待解析的HTML内容
  3. 解析HTML并定位目标标签
  4. 获取目标属性值

完整代码示例

from bs4 import BeautifulSoup

# 待解析的HTML内容(补全闭合标签更规范,不补全BeautifulSoup也能正常处理)
html_content = '''
<score-bill scoreA="86" audiencestate="upright" data-qa="score-panel" data-scoresmanager="scorebill:scoreAction" id="scoreboard" mediatype="assetseries" rating="" skeleton="panel" scoreb="98" assetstate="active">
</score-bill>
'''

# 创建解析对象,使用Python内置的html.parser解析器
soup = BeautifulSoup(html_content, 'html.parser')

# 定位到score-bill标签,和查找div、p等标准标签的方法完全相同
score_bill_tag = soup.find('score-bill')

# 获取scoreA属性的值:两种方式可选
# 方式1:用get()方法(属性不存在时返回None,更安全)
score_a = score_bill_tag.get('scorea')  # Beautiful Soup会自动将属性名转为小写
# 方式2:直接字典索引(属性不存在时会抛出KeyError)
# score_a = score_bill_tag['scorea']

print(score_a)  # 输出结果:86

关键说明

  • 自定义标签(如score-bill)无需特殊配置,find()、find_all()等方法均可正常识别
  • Beautiful Soup解析时会将属性名统一转为小写,因此传入scorea或原属性名scoreA都能获取到结果
  • 如果不确定目标属性是否存在,优先使用get()方法,避免程序报错

内容的提问来源于stack exchange,提问作者Lacer

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 18:40:04