Sports Scores & Odds Scraper — NBA, NFL, MLB, NHL, Soccer +15 avatar

Sports Scores & Odds Scraper — NBA, NFL, MLB, NHL, Soccer +15

Pricing

from $2.00 / 1,000 game scrapeds

Go to Apify Store
Sports Scores & Odds Scraper — NBA, NFL, MLB, NHL, Soccer +15

Sports Scores & Odds Scraper — NBA, NFL, MLB, NHL, Soccer +15

Scrape live scores, fixtures, historical results and betting odds across 19 leagues in one dataset: teams, scores, records, venue, status, moneyline, spread and over/under.

Pricing

from $2.00 / 1,000 game scrapeds

Rating

0.0

(0)

Developer

Pixflor

Pixflor

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 hours ago

Last modified

Share

Live scores, upcoming fixtures, historical results and betting odds — 19 leagues, one schema, one run.

No API key. No login. Pick your leagues, set a date range, export CSV or JSON.


Leagues covered

Basketball NBA · WNBA · NCAA Men's Football NFL · NCAA Baseball MLB Hockey NHL Soccer Premier League · La Liga · Serie A · Bundesliga · Ligue 1 · Champions League · MLS Combat UFC Tennis ATP · WTA Motorsport Formula 1 Golf PGA

Mix them freely — a single run can pull NBA, Premier League and F1 into the same table, because every league returns identical columns.


What you get

ColumnExample
date2026-03-15T23:00Z
league / sportnba · basketball
awayTeam / awayScore / awayRecordMinnesota Timberwolves · 103 · 41-27
homeTeam / homeScore / homeRecordOklahoma City Thunder · 116 · 53-15
homeWinner / awayWinnertrue / false
status / statusDetail / completedSTATUS_FINAL · Final · true
venue / venueCity / attendancePaycom Center · Oklahoma City
oddsDetails / spread / overUnderOKC -6.5 · -6.5 · 215.5
homeMoneyline / awayMoneyline-280 / +230
broadcasts["ESPN"]

Typical uses

  • Historical datasets. Set a date range and pull a whole month of results in one run — a 5-day NBA range returns ~40 games.
  • Model training and backtesting. Scores, records and closing odds in the same row.
  • Live dashboards. Schedule it every few minutes with Live now selected.
  • Sports content and newsletters. Yesterday's results, formatted, automatically.
  • Odds monitoring. Filter to Only games with betting odds and track line movement.

Example input

Yesterday's finished games across the big four:

{
"leagues": ["nba", "nfl", "mlb", "nhl"],
"dateFrom": "2026-03-15",
"dateTo": "2026-03-15",
"statusFilter": "final"
}

A month of Premier League history:

{
"leagues": ["epl"],
"dateFrom": "2026-03-01",
"dateTo": "2026-03-31",
"sortBy": "date",
"maxItems": 500
}

One team, all season:

{ "leagues": ["nba"], "team": "Celtics", "dateFrom": "2026-01-01", "dateTo": "2026-04-01" }

Settings that matter

  • Leave both dates empty to get the current scoreboard — today's games and what's next.
  • dateFrom + dateTo pulls a historical range in a single run. This is the feature most single-day scrapers don't have.
  • team matches both full names and abbreviations, so BOS and Celtics both work.
  • withOddsOnly is aggressive: odds exist for some leagues only, and usually only near game time. Expect it to filter heavily.
  • maxItems is your cost ceiling. Set it deliberately.

Pricing

Pay per event — you pay for games returned, not for runtime.

EventPrice
Actor start$0.002 per run
Game scraped$0.002 each

1,000 games ≈ $2.00.


Reliability

Plain HTTP against a public JSON API — no HTML parsing, no headless browser, no bot-detection workarounds. Website redesigns don't affect it.

Every request retries with exponential backoff, and one league failing degrades the run instead of ending it — you still get the others, and the log names the one that was missing.


Notes

  • Data is provided as-is for research and analysis, with no warranty of accuracy or timeliness. It is not betting advice.
  • Leagues have off-seasons. An empty result for a date range usually means there were no fixtures, not that something broke — the log tells you which leagues returned nothing.
  • Odds coverage varies by league and is typically populated close to game time. null means "not published", not "no line exists".
  • Tennis, MMA and golf have no home/away concept; competitors are mapped positionally and scores may be absent for formats that don't use them.

Questions or a bug?

Open an issue on the Issues tab with your input JSON and the run ID — that's usually enough to reproduce it immediately.