ESPN Sports Scraper (Scores, Standings, Teams, Rosters)
Pricing
from $1.20 / 1,000 rows
ESPN Sports Scraper (Scores, Standings, Teams, Rosters)
Scrape ESPN sports data for NBA, NFL, MLB, NHL and soccer leagues: game scores and status, league standings, team lists and player rosters, from ESPN public endpoints.
Pricing
from $1.20 / 1,000 rows
Rating
0.0
(0)
Developer
Murat Uzun
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Share
What is ESPN Sports Scraper?
ESPN Sports Scraper collects sports data from ESPN for NBA, NFL, MLB, NHL and soccer leagues such as the Premier League: game scores and status, league standings, team lists and player rosters. It reads ESPN's public site data, so no ESPN login or API key is needed.
Why use ESPN Sports Scraper?
- Scores and game status for any date range (up to 31 days per run) across several leagues.
- League standings with wins, losses, points and point differential.
- Team lists with ESPN IDs and abbreviations, for joining with other data.
- Rosters with jersey number, position, height, weight, age and college.
- Pay only for rows saved.
How to use ESPN Sports Scraper
- Enter one or more leagues as
sport/league(for examplebasketball/nbaorsoccer/eng.1). - Choose the data: games, standings, teams or players.
- For games, set the start date and the end date (YYYY-MM-DD).
- Run it and download the dataset as JSON, CSV, Excel or HTML, or read it through the API.
Example input
{"leagues": ["basketball/nba"],"dataType": "games","dateFrom": "2026-10-15","dateTo": "2026-10-22","maxResults": 60}
Example output
Real rows from runs on 2026-10-23.
Game (NBA, 2026-10-15):
{"kind": "game","league": "nba","sport": "basketball","itemId": "401908945","name": "Toronto Raptors at New York Knicks","date": "2026-10-15T23:30Z","statusState": "post","statusDetail": "Final","homeTeam": "New York Knicks","homeScore": 122,"awayTeam": "Toronto Raptors","awayScore": 120,"winner": "home","venue": "Madison Square Garden","city": "New York","attendance": 19812,"broadcast": null,"url": "https://www.espn.com/nba/game/_/gameId/401908945/raptors-knicks","position": 1}
Standing (Premier League, eng.1):
{"kind": "standing","league": "eng.1","sport": "soccer","group": "2026-27 English Premier League","itemId": "382","name": "Manchester City","teamId": "382","teamName": "Manchester City","teamAbbreviation": "MNC","location": "Manchester City","gamesPlayed": 7,"wins": 7,"losses": 0,"ties": 0,"points": 21,"pointsFor": 19,"pointsAgainst": 7,"pointDifferential": 12,"url": "https://www.espn.com/soccer/club/_/id/382/manchester-city","position": 1}
Data table
dataType | Rows | Main fields |
|---|---|---|
games | one per game | teams, scores, winner, status, venue, city, attendance, broadcast |
standings | one per team in the table | group, wins, losses, ties, win percent, points, point differential, streak, games behind |
teams | one per team | team ID, name, abbreviation, location, link |
players | one per player on the rosters of the first teams | athlete ID, jersey, player position, height, weight, age, experience, college |
Fields that a league does not publish (for example points in basketball) are left empty.
Input parameters
- Leagues:
sport/leaguepaths. Several leagues per run. - Data to collect: games, standings, teams or players.
- Games from / to (date): YYYY-MM-DD. The end date is inclusive, up to 31 days. Empty start date means today (UTC). One request is made per day.
- Max results per league: 1 to 1000.
- Max teams for players: how many team rosters to load (players mode only).
Pricing
Pay per row saved (see the Actor page for the current price). The run stops before it would exceed your max total charge.
ESPN Sports Scraper vs. the ESPN website
This Actor calls ESPN's public site API and returns one structured row per game, standing, team or player. It does not provide odds, play-by-play, news or video.
Using ESPN Sports Scraper with AI agents and MCP
Use it from the Apify MCP server or the API with a league and a date range. Pay-per-event pricing is charged per row, so an agent that sets a maxTotalChargeUsd never goes over that budget.
FAQ
Why is a game missing? ESPN lists a game on the day it is scheduled. Check the date range; each date is requested on its own.
Does it include player statistics (points, rebounds, goals)? No. This version returns roster information for players, not season or game statistics.
Why does the date range have a 31-day limit? ESPN's scoreboard does not accept date ranges, so the Actor asks one day at a time. The limit keeps one run from making too many requests.
Support and feedback
If you find a problem, open an issue in the Actor's Issues tab. A review helps other users find it.