tennis-data

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Tennis Data (ATP + WTA)

网球数据(ATP + WTA)

Quick Start

快速开始

Prefer the CLI — it avoids Python import path issues:
bash
sports-skills tennis get_scoreboard --tour=atp
sports-skills tennis get_rankings --tour=wta
sports-skills tennis get_calendar --tour=atp --year=2026
推荐使用CLI——可避免Python导入路径问题:
bash
sports-skills tennis get_scoreboard --tour=atp
sports-skills tennis get_rankings --tour=wta
sports-skills tennis get_calendar --tour=atp --year=2026

Important: Tennis is Not a Team Sport

重要提示:网球并非团队运动

Tennis data is fundamentally different from team sports (NFL, NBA, etc.):
  • Tournaments, not games: Events are multi-day tournaments containing many matches.
  • Individual athletes: Competitors are individual players (singles) or pairs (doubles), not teams.
  • Set-based scoring: Scores are per-set game counts (e.g., 6-4, 7-5), not quarters.
  • Rankings, not standings: Players have ATP/WTA ranking points, not team records.
  • No rosters or team schedules: Tennis has no team-level commands.
网球数据与团队运动(如NFL、NBA等)存在本质区别:
  • 赛事而非单场比赛:赛事是持续多日、包含多场比赛的活动。
  • 个体运动员:参赛者为单人(单打)或双人组合(双打),而非团队。
  • 盘制计分:比分按每盘的局数统计(如6-4、7-5),而非按节。
  • 排名而非战绩:选手拥有ATP/WTA排名积分,而非团队战绩。
  • 无阵容或团队赛程:网球相关命令不涉及团队层面的操作。

The
tour
Parameter

tour
参数

Most commands require
--tour=atp
or
--tour=wta
:
  • ATP: Men's professional tennis tour
  • WTA: Women's professional tennis tour
If the user doesn't specify, default to
atp
for men's tennis or
wta
for women's tennis. If the user just says "tennis" without specifying, ask which tour or show both by calling the command twice.
Before complex fetches, run the parameter validator:
bash scripts/validate_params.sh [args]
For detailed reference data, see the files in the
references/
directory.
大多数命令需要指定
--tour=atp
--tour=wta
  • ATP:男子职业网球巡回赛
  • WTA:女子职业网球巡回赛
如果用户未指定,男子网球默认使用
atp
,女子网球默认使用
wta
。若用户仅提及“网球”未明确性别,需询问用户选择哪项巡回赛,或通过两次调用命令同时展示两者数据。
在进行复杂数据获取前,运行参数验证脚本:
bash scripts/validate_params.sh [args]
如需详细参考数据,请查看
references/
目录下的文件。

Workflows

工作流

Workflow: Live Tournament Check

工作流:实时赛事查询

  1. get_scoreboard --tour=<atp|wta>
  2. Present current matches by round.
  3. For player info, use
    get_player_info --player_id=<id>
    .
  1. 执行
    get_scoreboard --tour=<atp|wta>
  2. 按轮次展示当前进行的比赛。
  3. 如需选手信息,使用
    get_player_info --player_id=<id>

Workflow: Rankings Lookup

工作流:排名查询

  1. get_rankings --tour=<atp|wta> --limit=20
  2. Present rankings with points and trend.
  1. 执行
    get_rankings --tour=<atp|wta> --limit=20
  2. 展示排名及对应积分和趋势。

Workflow: Season Calendar

工作流:赛季日历查询

  1. get_calendar --tour=<atp|wta> --year=<year>
  2. Filter for specific tournament.
  3. get_news --tour=<tour>
    for latest coverage.
  1. 执行
    get_calendar --tour=<atp|wta> --year=<year>
  2. 筛选特定赛事。
  3. 执行
    get_news --tour=<tour>
    获取最新赛事报道。

Examples

示例

User: "What ATP matches are happening right now?"
  1. Call
    get_scoreboard(tour="atp")
  2. Present current tournaments and matches by round
User: "Show me the WTA rankings"
  1. Call
    get_rankings(tour="wta", limit=20)
  2. Present rankings with rank, name, points, and trend
User: "When is the French Open this year?"
  1. Call
    get_calendar(tour="atp", year=2026)
  2. Search results for "Roland Garros" (the French Open's official name)
用户:“当前有哪些ATP比赛正在进行?”
  1. 调用
    get_scoreboard(tour="atp")
  2. 按轮次展示当前赛事及比赛情况
用户:“给我看WTA排名”
  1. 调用
    get_rankings(tour="wta", limit=20)
  2. 展示排名、选手姓名、积分及趋势
用户:“今年法网什么时候举行?”
  1. 调用
    get_calendar(tour="atp", year=2026)
  2. 在结果中搜索“Roland Garros”(法网的官方名称)

Error Handling & Fallbacks

错误处理与备选方案

  • If
    get_scoreboard
    returns no matches, tournaments run specific weeks. Use
    get_calendar
    to find when events are scheduled.
  • If rankings are empty, rankings update weekly on Mondays. The command auto-retries previous weeks.
  • If player profile fails, use
    get_rankings
    to verify the player_id.
  • Never fabricate match scores or rankings. If data is unavailable, state so.
  • get_scoreboard
    未返回任何比赛数据,说明赛事仅在特定周举办。使用
    get_calendar
    查询赛事安排时间。
  • 若排名数据为空,排名每周一更新。命令会自动重试查询前几周的数据。
  • 若选手资料获取失败,使用
    get_rankings
    验证player_id是否正确。
  • 切勿编造比赛比分或排名。若数据不可用,需如实告知用户。