fastf1

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

FastF1 — Formula 1 Data

FastF1 — 一级方程式(F1)数据

Setup

安装配置

F1 requires extra dependencies (fastf1 + pandas). Install with:
bash
which sports-skills || pip install sports-skills[f1]
If already installed without F1 support, add the extra:
bash
pip install sports-skills[f1]
If
pip install
fails with a Python version error, the package requires Python 3.10+. Find a compatible Python:
bash
python3 --version  # check version
F1功能需要额外依赖(fastf1 + pandas),安装命令:
bash
which sports-skills || pip install sports-skills[f1]
如果已安装基础版但无F1支持,添加额外依赖:
bash
pip install sports-skills[f1]
pip install
因Python版本报错,该包要求Python 3.10及以上版本。请使用兼容版本:
bash
python3 --version  # 检查版本

If < 3.10, try: python3.12 -m pip install sports-skills[f1]

若版本低于3.10,尝试:python3.12 -m pip install sports-skills[f1]

On macOS with Homebrew: /opt/homebrew/bin/python3.12 -m pip install sports-skills[f1]

macOS系统使用Homebrew的用户:/opt/homebrew/bin/python3.12 -m pip install sports-skills[f1]

No API keys required.
无需API密钥。

Quick Start

快速开始

Prefer the CLI — it avoids Python import path issues:
bash
sports-skills f1 get_race_schedule --year=2025
sports-skills f1 get_race_results --year=2025 --event=Monza
Python SDK (alternative):
python
from sports_skills import f1

schedule = f1.get_race_schedule(year=2025)
results = f1.get_race_results(year=2025, event="Monza")
推荐使用CLI(命令行界面),可避免Python导入路径问题:
bash
sports-skills f1 get_race_schedule --year=2025
sports-skills f1 get_race_results --year=2025 --event=Monza
Python SDK(备选方案):
python
from sports_skills import f1

schedule = f1.get_race_schedule(year=2025)
results = f1.get_race_results(year=2025, event="Monza")

Commands

命令说明

get_race_schedule

get_race_schedule

Get race schedule for a season.
  • year
    (int, required): Season year
获取赛季的赛程安排。
  • year
    (整数,必填):赛季年份

get_race_results

get_race_results

Get race results (positions, times, points).
  • year
    (int, required): Season year
  • event
    (str, required): Event name (e.g., "Monza", "Silverstone")
获取比赛结果(排名、用时、积分)。
  • year
    (整数,必填):赛季年份
  • event
    (字符串,必填):赛事名称(例如:"Monza"、"Silverstone")

get_session_data

get_session_data

Get detailed session data (qualifying, race, practice).
  • session_year
    (int, required): Year
  • session_name
    (str, required): Event name
  • session_type
    (str, optional): "Q" (qualifying), "R" (race), "FP1", etc. Default: "Q"
获取赛事阶段的详细数据(排位赛、正赛、练习赛)。
  • session_year
    (整数,必填):年份
  • session_name
    (字符串,必填):赛事名称
  • session_type
    (字符串,可选):"Q"(排位赛)、"R"(正赛)、"FP1"等,默认值:"Q"

get_driver_info

get_driver_info

Get driver information for a season.
  • year
    (int, required): Season year
  • driver
    (str, optional): Driver code or name. Omit for all drivers.
获取赛季的车手信息。
  • year
    (整数,必填):赛季年份
  • driver
    (字符串,可选):车手代码或姓名,留空则获取所有车手信息

get_team_info

get_team_info

Get team information for a season.
  • year
    (int, required): Season year
  • team
    (str, optional): Team name. Omit for all teams.
获取赛季的车队信息。
  • year
    (整数,必填):赛季年份
  • team
    (字符串,可选):车队名称,留空则获取所有车队信息

get_lap_data

get_lap_data

Get lap-by-lap timing data.
  • year
    (int, required): Season year
  • event
    (str, required): Event name
  • session_type
    (str, optional): Session type. Default: "R"
  • driver
    (str, optional): Driver code. Omit for all drivers.
获取单圈计时数据。
  • year
    (整数,必填):赛季年份
  • event
    (字符串,必填):赛事名称
  • session_type
    (字符串,可选):赛事阶段类型,默认值:"R"
  • driver
    (字符串,可选):车手代码,留空则获取所有车手数据

Examples

使用示例

User: "Show me the 2025 F1 calendar"
  1. Call
    get_race_schedule(year=2025)
  2. Present schedule with event names, dates, and circuits
User: "How did Verstappen do at Monza?"
  1. Call
    get_race_results(year=2025, event="Monza")
    for final classification
  2. Call
    get_lap_data(year=2025, event="Monza", session_type="R", driver="VER")
    for lap times
  3. Present finishing position, gap to leader, fastest lap, and tire strategy
User: "Compare qualifying times at Silverstone"
  1. Call
    get_session_data(session_year=2025, session_name="Silverstone", session_type="Q")
  2. Call
    get_lap_data(year=2025, event="Silverstone", session_type="Q")
    for all drivers
  3. Present Q1/Q2/Q3 times sorted by position
用户:"展示2025年F1赛历"
  1. 调用
    get_race_schedule(year=2025)
  2. 展示包含赛事名称、日期、赛道的赛程表
用户:"维斯塔潘在蒙扎的表现如何?"
  1. 调用
    get_race_results(year=2025, event="Monza")
    获取最终排名
  2. 调用
    get_lap_data(year=2025, event="Monza", session_type="R", driver="VER")
    获取单圈用时
  3. 展示最终排名、与领先者的差距、最快单圈及轮胎策略
用户:"对比银石赛道的排位赛成绩"
  1. 调用
    get_session_data(session_year=2025, session_name="Silverstone", session_type="Q")
  2. 调用
    get_lap_data(year=2025, event="Silverstone", session_type="Q")
    获取所有车手数据
  3. 按排名展示Q1/Q2/Q3的成绩

Troubleshooting

问题排查

  • sports-skills
    command not found
    : Package not installed. Run
    pip install sports-skills[f1]
    . If pip fails with a Python version error, you need Python 3.10+ — see Setup section.
  • ModuleNotFoundError: No module named 'sports_skills'
    : Same as above — install the package. Prefer the CLI over Python imports to avoid path issues.
  • ImportError on
    from sports_skills import f1
    : F1 module requires extra dependencies beyond the base package. Run
    pip install sports-skills[f1]
    to add fastf1 + pandas.
  • No data for future events: FastF1 only returns data for completed sessions. Future races appear in the schedule but have no session data.
  • Slow first request: FastF1 downloads and caches session data locally. First call for a given session may take 10-30 seconds. Subsequent calls are fast.
  • Event name not found: Use the exact event name from
    get_race_schedule()
    . Common circuit names like "Monza" or "Silverstone" usually work as aliases.
  • fastest_lap
    false /
    fastest_lap_time
    empty in race results
    : FastF1 doesn't always populate these fields. To find the actual fastest lap, use
    get_lap_data()
    and find the minimum
    lap_time
    across all drivers.
  • sports-skills
    命令未找到
    :未安装该包,请执行
    pip install sports-skills[f1]
    。若pip因Python版本报错,需使用Python 3.10及以上版本——详见安装配置部分。
  • ModuleNotFoundError: No module named 'sports_skills'
    :同上,需安装该包。推荐使用CLI而非Python导入方式,可避免路径问题。
  • from sports_skills import f1
    导入报错
    :F1模块需要基础包之外的额外依赖,请执行
    pip install sports-skills[f1]
    安装fastf1和pandas。
  • 未来赛事无数据:FastF1仅返回已完成赛事的数据。未来赛事会出现在赛程中,但无赛事阶段数据。
  • 首次请求缓慢:FastF1会在本地下载并缓存赛事数据。首次调用某赛事数据可能需要10-30秒,后续调用会很快。
  • 赛事名称未找到:请使用
    get_race_schedule()
    返回的准确赛事名称。常见赛道名称如"Monza"或"Silverstone"通常可作为别名使用。
  • 比赛结果中
    fastest_lap
    为false /
    fastest_lap_time
    为空
    :FastF1并非总能填充这些字段。如需查找真实最快单圈,请使用
    get_lap_data()
    并找出所有车手的最小
    lap_time
    值。