ESPN Scraper avatar

ESPN Scraper

Pricing

from $1.20 / 1,000 results

Go to Apify Store
ESPN Scraper

ESPN Scraper

Extract live scores, standings, teams, news, and game summaries from ESPN's public API. 17 sports, 139 leagues. No API key, no login, no proxy, no browser.

Pricing

from $1.20 / 1,000 results

Rating

0.0

(0)

Developer

Aurenic

Aurenic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Extract live scores, standings, teams, news, and game summaries from ESPN's public API. 17 sports, 139 leagues. No API key, no login, no proxy, no browser.

What does ESPN Scraper do?

Scrape ESPN's undocumented public API — the same JSON endpoints that power espn.com — in five modes:

  • Scoreboard — live and final scores with venue, broadcast, attendance, records, and winner flags for every game on a date.
  • Standings — division and conference standings with full stat lines (W-L, PCT, GB, PF, PA, and sport-specific stats).
  • Teams — every team in a league with name, abbreviation, colors, logo, and location.
  • News — latest articles with headline, description, byline, categories, images, and direct links.
  • Game summary — full box score, scoring plays, and statistical leaders for a specific event.

Covers all major sports: NFL, NBA, MLB, NHL, MLS, Premier League, La Liga, Bundesliga, Serie A, Ligue 1, F1, UFC, PGA Golf, ATP Tennis, WNBA, NCAA Football, NCAA Basketball, and more.

Output fields

Event (scoreboard)

FieldDescription
eventIdESPN event ID
name / shortNameGame name
dateISO 8601 game date
statusLive / Final / Scheduled
venue / venueCity / venueStateLocation
broadcastTV networks
attendanceAttendance count
homeTeam / awayTeamTeam objects with ID, name, logo, colors
homeScore / awayScoreScores
homeWinner / awayWinnerWinner flags
homeRecord / awayRecordSeason records
linksESPN game page URLs

Standing

FieldDescription
groupDivision / conference
teamId / teamName / abbreviation / logoTeam identity
wins / losses / winPercent / gamesBehindCore standings
pointsFor / pointsAgainst / streakSport-specific stats

Team

FieldDescription
teamIdESPN team ID
displayName / nickname / locationName fields
abbreviationShort code
color / alternateColorBrand colors
logoLogo URL

News article

FieldDescription
headline / descriptionArticle summary
published / lastModifiedTimestamps
bylineAuthor
categoriesTags
imageUrlHero image
linkDirect article URL

Who is it for?

  • Sports betting and DFS platforms powering live odds and matchup data
  • Fantasy sports apps pulling real-time scores, standings, and player data
  • Sports media and blogs building automated news and results pipelines
  • Data journalists analyzing team performance across seasons
  • Sports analytics teams building historical game datasets
  • Fan apps and newsletters pushing live score updates

Pricing

$1.20 per 1,000 results. No subscription.

ResultsCost
100$0.12
1,000$1.20
10,000$12.00

How to use it

  1. Pick a Mode.
  2. Set Sports and Leagues (parallel arrays — sport[0] pairs with league[0]).
  3. Optionally add Dates (scoreboard) or Event IDs (summary).
  4. Set Max Items (default 500).
  5. Click Start.

Output example

{
"recordType": "event",
"sport": "basketball",
"league": "nba",
"eventId": "401584793",
"name": "Boston Celtics at Denver Nuggets",
"shortName": "BOS @ DEN",
"date": "2026-09-22T23:00:00Z",
"status": "Final",
"statusState": "post",
"completed": true,
"venue": "Ball Arena",
"venueCity": "Denver",
"venueState": "CO",
"broadcast": "ESPN",
"attendance": 19423,
"homeTeam": { "teamId": "7", "displayName": "Denver Nuggets", "abbreviation": "DEN" },
"homeScore": "112",
"homeWinner": true,
"homeRecord": "3-1",
"awayTeam": { "teamId": "2", "displayName": "Boston Celtics", "abbreviation": "BOS" },
"awayScore": "108",
"awayWinner": false,
"awayRecord": "4-2",
"scrapedAt": "2026-09-23T12:00:00.000Z"
}

Technical details

  • ESPN's public API — site.api.espn.com/apis/site/v2/sports/{sport}/{league}/.... Fully unauthenticated. No key, no token, no rate limit warnings [reference:4].
  • Five modes in one actor — scoreboard, standings, teams, news, summary.
  • 139+ leagues across 17 sports [reference:5].
  • No proxy, no browser, no login — pure JSON REST.
  • Self-throttled at 300ms between requests by default.
  • No API key registration — unlike TheSportsDB (30 req/min with shared key) and Regulations.gov (requires free key).

Known limits

  • Undocumented API — ESPN doesn't publish API docs. Endpoint structure is stable but could change without notice.
  • Rate limits are informal. ESPN doesn't publish a hard limit; 300ms throttle keeps runs safe. For very large runs, increase requestDelayMs.
  • Standings structure varies by sport. Football and basketball use nested division/conference groups; soccer uses table-based standings. The actor flattens both to one row per team.
  • Game summary is one record per event. Box score and leaders are nested in that single record.
  • News is capped by ESPN at ~25 articles per league feed. For historical news, use a different source.

FAQ

Do I need an API key? No. ESPN's public API is free and unauthenticated.

Do I need a proxy? No. Datacenter IPs are accepted.

What sports are supported? Football (NFL, NCAA), basketball (NBA, WNBA, NCAA), baseball (MLB), hockey (NHL), soccer (MLS, Premier League, La Liga, Bundesliga, Serie A, Ligue 1), racing (F1, NASCAR), MMA (UFC), golf (PGA), tennis (ATP, WTA), and more.

How do I find event IDs? Run scoreboard mode first — each event's eventId is in the output. Pass those to summary mode for full box scores.

How do I export data? After a run, go to Storage → Export as JSON, CSV, Excel.

Support

Open an issue on the Actor's page for bugs or feature requests.