TheSportsDB Scraper
Pricing
from $26.25 / 1,000 results
TheSportsDB Scraper
Scrape leagues, teams, players, and events from TheSportsDB - the open sports database covering soccer, basketball, American football, baseball, ice hockey, and more. No API key required.
Pricing
from $26.25 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share

๐ฅ TheSportsDB Scraper
๐ Export TheSportsDB's open sports catalogue in seconds. Pull leagues, teams, players, upcoming and past events, league standings, and live scores across soccer, basketball, ice hockey, baseball, American football, and many more sports. No sign-up, no manual scraping, no setup.
๐ Last updated: 2026-05-15 ยท ๐ 30+ fields per record ยท ๐ฅ Multi-sport coverage ยท ๐ 10 lookup modes ยท ๐ Open community catalogue
The TheSportsDB Scraper exports the crowd-sourced TheSportsDB catalogue and returns up to 30+ structured fields per record. Whether you're pulling all leagues, searching for a team or player by name, fetching upcoming and past events for a league, looking up league standings, or grabbing live scores for a sport, the Actor returns a clean structured row per entity ready for your dataset.
The catalogue covers soccer, basketball, American football, baseball, ice hockey, and many more sports, with team metadata, player bios, league structure, fixture lists, standings tables, and a continuously updated live-scores feed. This is the friendliest open sports database on the web, packaged for one-click export.
| ๐ฏ Target Audience | ๐ก Primary Use Cases |
|---|---|
| Sports media, fantasy app developers, hobbyist sports devs, journalists, fan communities, indie analytics teams | Multi-sport league directories, team + player lookups, fixture feeds, standings widgets, live-score tickers, content automation |
๐ What the TheSportsDB Scraper does
Ten lookup modes in a single run:
- ๐ All Leagues. Every league across every sport.
- ๐๏ธ Team Search. Resolve teams by name (e.g. "Arsenal").
- ๐ Team Lookup. Resolve a team by canonical ID with full metadata.
- ๐ค Player Search. Resolve players by name (e.g. "Messi").
- ๐ Team Roster. All players on a team by team ID.
- ๐ Upcoming Events. Next 15 events for a league by league ID.
- ๐ Past Events. Last 15 events for a league by league ID.
- ๐ Lookup Table. League standings table for a season (e.g.
2024-2025). - ๐ด Live Scores. Live in-progress events by sport (e.g. Soccer, Basketball, Ice Hockey).
- ๐๏ธ Events on a Day. All matches on a specific date, optionally filtered by sport or league.
Each record is normalised: empty fields are stripped, every row carries a scrapedAt ISO 8601 timestamp, and the original TheSportsDB field names are preserved for direct join compatibility with the catalogue.
๐ก Why it matters: TheSportsDB is one of the few free, multi-sport, multi-league databases on the web. Building your own pipeline against it means handling 10 different lookup endpoints, normalising responses, and refreshing data manually. This Actor packages all of that into one click.
๐ฌ Full Demo
๐ง Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded dataset.
โ๏ธ Input
| Input | Type | Default | Behavior |
|---|---|---|---|
mode | string | "leagues" | One of leagues, teamSearch, teamLookup, playerSearch, teamRoster, upcomingEvents, pastEvents, lookupTable, livescore, eventsday. |
query | string | "" | Search text for teamSearch / playerSearch. |
leagueId | string | "" | League ID for upcomingEvents / pastEvents / lookupTable (e.g. 4328 = English Premier League). |
teamId | string | "" | Team ID for teamLookup / teamRoster. |
season | string | "" | Season for lookupTable (e.g. 2024-2025). |
sport | string | "" | Sport name for livescore / eventsday (e.g. Soccer, Basketball, Ice_Hockey). |
date | string | "" | YYYY-MM-DD for eventsday mode. |
maxItems | integer | 10 | Free plan caps at 10, paid plan at 1,000,000. |
Example: every league in the catalogue.
{"mode": "leagues","maxItems": 100}
Example: English Premier League standings table for 2024-2025.
{"mode": "lookupTable","leagueId": "4328","season": "2024-2025"}
โ ๏ธ Good to Know: TheSportsDB's free public tier returns a fixed page size (typically 10-15 items) for some endpoints. The
maxItemsinput still applies on the dataset side for display purposes.
๐ Output
Each record contains up to 30+ fields, depending on mode. Download the dataset as CSV, Excel, JSON, or XML.
๐งพ Schema (leagues mode example)
| Field | Type | Example |
|---|---|---|
๐ idLeague | string | "4328" |
๐ strLeague | string | "English Premier League" |
โฝ strSport | string | "Soccer" |
๐ strLeagueAlternate | string | "Premier League" |
๐ slug | string | "english-premier-league-soccer" |
๐ scrapedAt | ISO 8601 | "2026-05-15T00:00:00.000Z" |
๐งพ Schema (teamSearch / teamLookup mode)
| Field | Type | Example |
|---|---|---|
๐ idTeam | string | "133604" |
๐๏ธ strTeam | string | "Arsenal" |
๐ณ๏ธ strCountry | string | "England" |
โฝ strSport | string | "Soccer" |
๐ strLeague | string | "English Premier League" |
๐
intFormedYear | string | "1886" |
๐๏ธ strStadium | string | "Emirates Stadium" |
๐ผ๏ธ strBadge | string | "https://www.thesportsdb.com/images/media/team/badge/..." |
๐ strDescriptionEN | string | "Arsenal Football Club is a..." |
๐ฆ Sample record
โจ Why choose this Actor
| Capability | |
|---|---|
| ๐ฅ | Ten lookup modes. Leagues, teams, players, fixtures, standings, live scores, day filters all in one Actor. |
| ๐ | Multi-sport coverage. Soccer, basketball, American football, baseball, ice hockey, and more. |
| ๐ผ๏ธ | Rich media. Team badges, stadium photos, player thumbs come straight from the catalogue. |
| ๐ | Fixture feeds. Next 15 + last 15 events per league, plus exact-date filters. |
| ๐ | Standings tables. Season-aware league tables with per-team metrics. |
| ๐ | Always fresh. Every run pulls the latest catalogue state. |
| ๐ซ | No sign-up. Works against the public catalogue. No login or token required. |
๐ TheSportsDB is the open multi-sport reference of choice for indie devs, fantasy startups, and fan-engagement platforms.
๐ How it compares to alternatives
| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| โญ TheSportsDB Scraper (this Actor) | $5 free credit, then pay-per-use | Multi-sport, 10 modes | Live per run | mode, query, league, team, sport, date | โก 2 min |
| Commercial sports data vendors | $$$$/month | Full + extras | Streaming | Many | โณ Weeks |
| Manual scraping | Free | Inconsistent | On demand | None | ๐ข Days |
| Sport-specific scrapers | Free | Single league | Live | Limited | ๐ Variable |
Pick this Actor when you want broad multi-sport coverage, normalised records, and zero pipeline maintenance.
๐ How to use
- ๐ Sign up. Create a free account w/ $5 credit (takes 2 minutes).
- ๐ Open the Actor. Go to the TheSportsDB Scraper page on the Apify Store.
- ๐ฏ Set input. Pick a mode and supply the relevant inputs (league ID, team ID, query, or date).
- ๐ Run it. Click Start and let the Actor collect your data.
- ๐ฅ Download. Grab your results in the Dataset tab as CSV, Excel, JSON, or XML.
โฑ๏ธ Total time from signup to downloaded dataset: 3-5 minutes. No coding required.
๐ผ Business use cases
๐ Automating TheSportsDB Scraper
Control the scraper programmatically for scheduled runs and pipeline integrations:
- ๐ข Node.js. Install the
apify-clientNPM package. - ๐ Python. Use the
apify-clientPyPI package. - ๐ See the Apify documentation for full details.
The Apify Schedules feature lets you trigger this Actor on any cron interval. Refresh live scores every minute, daily fixture digests, or weekly league snapshots are all one click.
๐ Beyond business use cases
Multi-sport data powers more than commercial workflows. The same records support research, education, civic projects, and personal initiatives.
๐ค Ask an AI assistant about this scraper
Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:
- ๐ฌ ChatGPT
- ๐ง Claude
- ๐ Perplexity
- ๐ Copilot
โ Frequently Asked Questions
๐งฉ How does it work?
Pick a mode (one of the ten lookup modes), supply the relevant inputs, and click Start. The Actor pulls fresh records from the public TheSportsDB catalogue and emits a clean structured row per league, team, player, or event.
๐ฅ Which sports are covered?
Soccer, basketball, American football, baseball, ice hockey, and many more. Use the leagues mode to inspect every sport and league the catalogue knows about.
๐ Can I get a fixture list for a league?
Yes. Set mode to upcomingEvents (next 15 fixtures) or pastEvents (last 15 fixtures) and supply the leagueId (e.g. 4328 for the English Premier League).
๐ How do I get a league standings table?
Set mode to lookupTable, supply leagueId, and set season to a season string (e.g. 2024-2025). Leave season empty to get the current season.
๐ด Can I pull live scores?
Yes. Set mode to livescore and supply the sport name (e.g. Soccer, Basketball, Ice_Hockey). The Actor returns all in-progress events for that sport.
๐๏ธ Can I get matches on a specific date?
Yes. Set mode to eventsday, supply date as YYYY-MM-DD, and optionally narrow by sport or leagueId.
๐ How do I look up a team or player?
Use teamSearch or playerSearch and supply the name in query (e.g. "Arsenal", "Messi"). Use teamLookup or teamRoster if you already have the canonical ID.
โฐ Can I schedule regular runs?
Yes. Use Apify Schedules to run this Actor every minute, hourly, or daily. The dataset always reflects the current state of the public catalogue.
โ๏ธ Is this data legal to use?
The TheSportsDB catalogue is published as an open community dataset. Review the source's terms of use for your specific use case, particularly if you redistribute or commercialise the content.
๐ณ Do I need a paid Apify plan to use this Actor?
No. The free Apify plan is enough for testing and small runs (10 records per run). A paid plan lifts the limit and unlocks scheduling and higher concurrency.
๐ What happens if a run fails or gets interrupted?
Apify automatically retries transient errors. If a run still fails, you can inspect the log in the Runs tab, fix the input, and re-run. Partial datasets from failed runs are preserved so you never lose progress.
๐ What if I need help?
Our support team is here to help. Contact us through the Apify platform or use the Tally form linked below.
๐ Integrate with any app
TheSportsDB Scraper connects to any cloud service via Apify integrations:
- Make - Automate multi-step workflows
- Zapier - Connect with 5,000+ apps
- Slack - Get score updates in your channels
- n8n - Self-hosted workflow automation
- Pipedream - Event-driven serverless workflows
- Airbyte - Pipe sports data into your warehouse
- GitHub - Trigger runs from commits
- Google Drive - Export datasets straight to Sheets
You can also use webhooks to trigger downstream actions when a run finishes. Push fresh fixtures into your product backend, or alert your fans in Slack when a goal is scored.
๐ Recommended Actors
- ๐ Sofascore Live Events Scraper - 13-sport live + scheduled events feed
- โพ MLB Stats Scraper - Schedules, teams, rosters, player stats, live game feeds
- ๐ NHL Stats Scraper - 32-team standings, schedules, player landing
- ๐ก๏ธ CWE MITRE Scraper - Software weakness reference catalogue
- ๐ OurAirports Scraper - Global airport reference dataset
๐ก Pro Tip: browse the complete ParseForge collection for more reference-data scrapers.
๐ Need Help? Open our contact form to request a new scraper, propose a custom data project, or report an issue.
โ ๏ธ Disclaimer: this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by TheSportsDB or any of its contributors. All trademarks mentioned are the property of their respective owners. Only publicly available open sports catalogue data is collected.