Sports Standings & Teams Scraper (ESPN)

League standings (rank, W-L-D, points, goals/points for & against, goal difference) and team directories (name, location, colors, logo, venue) across NFL, NBA, MLB, NHL, Premier League, La Liga, Champions League and more. No API key. Export JSON, CSV or Excel. Info only, not betting advice.

Sports Standings & Teams Scraper (ESPN)

League standings (rank, W-L-D, points, goals/points for & against, goal difference, streak) and team directories (name, abbreviation, location, colors, logo, venue) across the major leagues — NFL, NBA, MLB, NHL, Premier League, La Liga, Champions League and more — from ESPN's public endpoints.

No API key.

⚠️ Data is for informational purposes only — not betting advice.

What it does

  • Standings — full table per league: rank, games played, wins/losses/ties, points, points/goals for & against, differential, win %, streak, and qualification notes.
  • Teams — the league's team directory: name, abbreviation, location, primary/alternate colors, logo, and venue.
  • Multiple leagues in one run (grouped standings — divisions/conferences — are flattened with a group label).
  • Export to JSON, CSV, or Excel, or pull via the Apify API.

Leagues

nfl, nba, mlb, nhl, wnba, ncaab, college-football, epl, laliga, seriea, bundesliga, ligue1, ucl, uel, mls — or a raw sport/league slug.

Input

Field Description
leagues League keys (see above).
getStandings Return the standings table.
getTeams Return the team directory.

Example

{ "leagues": ["epl", "nba"], "getStandings": true, "getTeams": true }

Output

{ "resultType": "standing", "league": "epl", "rank": 1, "team": "Arsenal",
  "played": 4, "wins": 4, "points": 12, "pointDifferential": 7 }
{ "resultType": "team", "league": "nba", "name": "Atlanta Hawks", "abbr": "ATL",
  "color": "c8102e", "venue": "State Farm Arena" }

Use cases

  • League tables & widgets — embed live standings in an app or site.
  • Analytics & fantasy — team form, differentials, streaks.
  • Media — automated standings round-ups.
  • AI/RAG — feed structured standings to an LLM.

FAQ

Do I need an API key? No — it uses ESPN's public endpoints.

How are divisions/conferences handled? Grouped standings are flattened, each row tagged with its group (e.g. conference/division).

Not affiliated with ESPN. Data is for information only, not betting advice.

🤖 Use with Claude or ChatGPT (MCP)

Run this actor from Claude, ChatGPT, Cursor or any MCP client via the Apify MCP server. In Claude Desktop: Settings → Connectors → Add custom connector → https://mcp.apify.com. Or expose just this tool:

{ "mcpServers": { "apify": { "url": "https://mcp.apify.com?tools=get_anything/sports-standings-scraper" } } }

Full guide: Connect Apify actors to Claude & ChatGPT.

⭐ Found this useful?

If this Actor saved you time, please leave a rating on its Apify page — reviews genuinely help others discover it and help me keep improving it.

Related scrapers