要回答这个问题,我需要先明确您指的是哪个开源项目。

目前全球主流的足球数据开源项目(如 openfootball、soccerdata、fbpyp 等)以及普通的体育数据爬虫项目,通常不会直接提供“角球进球率”这个具体的统计字段,因为“角球进球率”是一个复合衍生指标,而不是基础数据。
这个指标是完全可以计算的,前提是项目的数据结构中包含了以下两个原始数据点:
- 比赛事件数据:记录每一次“角球”(Corner)事件和每一次“进球”(Goal)事件的具体时间。
- 事件关联逻辑:能否判断某个进球是否是“角球发出后直接导致”的(即进球方式为“头球摆渡”、“战术角球传中”或“对方解围后二次进攻”)。
如果您指的是以下常见的开源足球项目,情况如下:
openfootball(德国):包含了比赛结果、阵容和进球详情(含进球者、助攻者、时间),但不包含角球次数和角球进球的详细关联,所以无法直接计算,需要额外补充数据。soccerdata(Python):封装了 Understat、FotMob 等数据源。可以从底层 API 提取角球次数,但角球进球率需要结合事件序列(Event Sequence)自行编写逻辑判断(检查某个进球事件前 30 秒内是否发生过角球事件)。mckaywrigley/football-data或 API-Football 类项目:一般都包含“事件”接口(含角球和进球),但没有现成的“角球进球率”字段,您需要自行写 SQL 或 Python 聚合计算。
如果您已经有现成的项目代码,如何快速判断它是否支持?
您可以检查代码中是否有以下逻辑:
- 搜索
corner或角球关键词,看是否只用于统计次数,还是关联到了goal。 - 搜索
assist或assisted by字段,看是否记录了“进球前的定位球类型”。 - 如果数据库表里有
event_typeevent_type = 'Corner'和event_type = 'Goal'是分开的两行,那么该项目没有直接提供角球进球率,但支持您自己计算。
- 如果这个项目是一个基础的数据收集器,它大概率不直接跟踪角球进球率。
- 如果这个项目是一个高级的数据分析引擎(通常只有付费的商用数据 API 如 Opta 或 StatsBomb 才提供),它可能会在球员事件表(Shot)中包含
shot_assist_type或situation = 'From Corner'这样的字段,但开源免费项目中极少见。
建议: 如果您能告诉我这个项目的名称或 GitHub 链接,我可以帮您更具体地查看它的数据模型是否有相关字段,或者,如果您只是想算这个数据,我可以给您提供一个简单的 SQL/脚本计算思路。