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

Python爬虫抓取ESPN球队花名册无球衣号码报错如何修复

错误根因

你代码报错的核心原因是部分ESPN球队花名册里的球员数据不存在jersey(球衣号码)字段,直接通过player['jersey']按键取值会抛出KeyError异常,终止程序运行。

修复方法

修改球员字段的取值逻辑,使用字典的get()方法为缺失的字段设置兜底默认值即可,无需改动其他逻辑:

  1. 将原代码中j=player['jersey']替换为j = player.get('jersey', 'N/A'),无球衣号码时会自动用N/A作为占位值,你也可以把默认值改成空字符串''或者其他你想要的标识。
  2. 若要进一步提升稳定性,name、position字段也可以用相同的get()方法加兜底,避免其他字段缺失引发的报错。
修改后的核心代码片段
for group in roster['groups']:
    for player in group['athletes']:
        n = player.get('name', '未知姓名')
        p = player.get('position', '未知位置')
        # 无球衣号码时用N/A占位
        j = player.get('jersey', 'N/A')
        DATA = '%s%s\t%s %s %s (%s)\t[%s]\n'%(short,j,team,p,n,j,n)
        TEAM.append(DATA)

修改后重新运行即可正常抓取所有球队的花名册数据,包括存在无球衣号码球员的页面。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 08:54:08