482 scrapers live47.7K runs1,562 usersRebuilt in the last 30 days: 482 of 482

Scrapers / Jobs & Recruiting

MLB Stats Scraper logo

MLB Stats Scraper

hipersoft/mlb-statsapi-scraper

Fetch MLB baseball data in bulk — teams, rosters, schedules, scores and player profiles. One clean row per team, roster spot, game or player with names, leagues, divisions, venues, scores and bios. Fast and reliable for sports apps, stats dashboards, fantasy tools and n8n.

Total users

2

Monthly users

1

Total runs

64

Per item scraped

$0.001

Last rebuilt

Oct 28, 2026

Overview

MLB Stats Scraper pulls teams, rosters, schedules, scores and player profiles for Major League Baseball — all as clean, structured data. List every MLB club for a season, get the full roster for a team, pull games and results for any date or date range, and look up player bios by id or name. Export to JSON, CSV, Excel or XML. Fast, reliable, and built for sports apps, stats dashboards, fantasy tools and automation workflows.

What does this MLB scraper do?

Pick a mode, add a couple of parameters, and it returns every matching record as structured data:

  • Teams — every MLB club for a season, with league, division, venue, city and the year the franchise started play.
  • Roster — all players on a team for a season, with position, jersey number and team id.
  • Schedule — games for a single date or a date range, with home/away teams, scores, status and venue.
  • Player — a single player profile by id, or a name search, with position, bat side, throwing hand, birth date, birth country and MLB debut date.

What data can you get?

Data point Description
Team id, name, abbreviation, league, division, venue, city, firstYearOfPlay
Roster playerId, name, position, jerseyNumber, teamId
Schedule gamePk, date, homeTeam, awayTeam, homeScore, awayScore, status, venue
Player id, name, primaryPosition, batSide, throws, birthDate, birthCountry, mlbDebutDate

What you get

Each team, roster spot, game or player is one clean dataset record. Every row carries a recordType so you can tell them apart. Export the full table to JSON, CSV, Excel or XML, or pull it programmatically.

{
  "mode": "teams",
  "recordType": "team",
  "id": 147,
  "name": "New York Yankees",
  "abbreviation": "NYY",
  "league": "American League",
  "division": "American League East",
  "venue": "Yankee Stadium",
  "city": "Bronx",
  "firstYearOfPlay": "1903"
}

Use cases

  • Build team directories and league/division tables for a baseball site or app.
  • Pull daily schedules and final scores into a dashboard or calendar.
  • Backfill results across a date range for a stats or analytics dataset.
  • Enrich fantasy tools with roster positions, jersey numbers and player bios.
  • Power a bot that reports last night's games and scores.

How to use the MLB Stats Scraper

  1. Add the MLB Stats Scraper to your Apify account and open its input.
  2. Choose a mode: teams, roster, schedule or player.
  3. Fill the matching parameter — season for teams/roster, teamId for roster, date (or startDate + endDate) for schedule, or playerId / playerName for player.
  4. Click Run.
  5. Export the results as JSON, CSV, Excel or XML, or pull them via the Apify API.

Input

{
  "mode": "teams",
  "season": 2025
}
Field Description
mode teams, roster, schedule or player.
season Four-digit year for teams and roster (e.g. 2025). Defaults to the current year.
teamId Numeric team id for roster (e.g. 147 for the Yankees).
date Single date for schedule (YYYY-MM-DD).
startDate / endDate Date range for schedule (YYYY-MM-DD).
playerId Numeric player id for player (e.g. 545361).
playerName Player name to search for player (e.g. "Mike Trout").

Tip: chaining modes

Don't know an id? Run teams to list every club and its id, roster to get player ids for a team, then feed a playerId into player for the full profile — or a teamId into roster for the squad.

Output schema

Fields below are for the teams mode. The roster, schedule and player modes return their own record shapes, and each row carries a recordType so you can tell them apart.

Field Type Description
mode string The mode that produced the record.
recordType string team, rosterPlayer, game or player.
id integer Unique identifier for the team.
name string Team name (e.g. "New York Yankees").
abbreviation string Short team code (e.g. "NYY").
league string League name (American or National League).
division string Division name (e.g. "American League East").
venue string Home ballpark.
city string Team location / city.
firstYearOfPlay string Year the franchise started play.

Need more sports & media data?

FAQ

Which league and seasons are covered? Major League Baseball, across current and historical seasons. Pass any four-digit season year to the teams and roster modes, and any date to the schedule mode.

How do I find a team or player id? Run the teams mode to list every club and its id, then run roster for a team to get player ids. You can also search a player by name with playerName.

What export formats are supported? JSON, CSV, Excel and XML, plus programmatic access through the Apify API.

How does billing work? You pay per item you get, so cost scales with the number of records you actually collect. See the Pricing tab for current rates.

Can I use this with n8n? Yes. Run the MLB Stats Scraper from n8n with the Apify node — trigger a run, pass your mode and parameters, and read the dataset items straight into your workflow. It also works with Make, Zapier and the Apify API.

Can I connect this to other tools? The MLB Stats Scraper connects with almost any cloud service or web app thanks to integrations on the Apify platform. It works with Make, Zapier, Slack, Airbyte, GitHub, Google Drive and many more, plus the Apify API, JavaScript/Python clients and MCP. Or use webhooks to trigger an action whenever a run finishes.

Notes

Original clean-room implementation. Reads only publicly available baseball information. Not affiliated with, endorsed by or connected to Major League Baseball, MLB Advanced Media or any club.

Input

FieldTypeDescription
mode
Mode
string · teams, roster, schedule, playerWhat to fetch: teams (all MLB teams for a season), roster (all players on a team for a season), schedule (games, scores and status for a date or date range), or player (a single player profile by id, or search by name).
Default: "teams"
season
Season (year)
integerFour-digit year used by teams and roster (e.g. 2025). Defaults to the current year when left empty.
teamId
Team ID
integerNumeric MLB team id used by the roster mode (e.g. 147 for the New York Yankees, 133 for the Athletics). Run the teams mode first to look ids up.
date
Schedule date (YYYY-MM-DD)
stringSingle date for the schedule mode, e.g. 2025-07-04. Ignored if Start date and End date are both set.
startDate
Schedule start date (YYYY-MM-DD)
stringStart of a date range for the schedule mode, e.g. 2025-07-01. Use together with End date to pull multiple days of games.
endDate
Schedule end date (YYYY-MM-DD)
stringEnd of a date range for the schedule mode, e.g. 2025-07-07. Use together with Start date.
playerId
Player ID
integerNumeric MLB player id for the player mode (e.g. 545361 for Mike Trout). Takes priority over Player name if both are set. Find ids via the roster mode.
playerName
Player name
stringPlayer name to search in the player mode when you do not have the id (e.g. "Mike Trout"). Ignored if Player ID is set.

API

curl -X POST "https://api.apify.com/v2/acts/hipersoft~mlb-statsapi-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "season": 2025,
  "teamId": 147,
  "date": "2025-07-04",
  "startDate": "2025-07-01",
  "endDate": "2025-07-07",
  "playerId": 545361,
  "playerName": "Mike Trout"
}'

Pricing

EventPricePaid plans from
Item Scraped
Charged per item scraped.
$0.001$0.0005

You pay only for what the run returns. Set a maximum cost per run and it stops cleanly at that limit.

Related scrapers

Dribbble Shots Scraper

Scrape public design shots from Dribbble: title, high-res image, tags, likes, views and designer credit. Filter by category or sort, export JSON, CSV or Excel.

359 runs · 5 users · $0.003 / shot scraped

Computrabajo Scraper

Scrape Computrabajo job listings across Latin America (Mexico, Colombia, Argentina, Chile, Peru and more): title, company, location, salary, posted date and apply URL. Filter by country and keyword. No setup.

206 runs · 4 users · $0.002 / listing scraped

Kraken Market Data Scraper

Fetch Kraken spot market data in bulk: ticker stats (ask, bid, last, 24h high/low/volume/vwap), OHLC candles for any interval, order book depth (top bids/asks), and tradable pair metadata. Fast, clean and cheap.

165 runs · 4 users · $0.001 / pair scraped

Bayt Scraper

Scrape Bayt.com job listings across the Middle East (UAE, Saudi Arabia, Egypt, Qatar and more): title, company, location, posted date and apply URL. Filter by country and keyword.

134 runs · 4 users · $0.003 / job scraped

GitHub Scraper

Search GitHub and scrape repositories (stars, forks, language, topics, license, dates) or user profiles (name, company, location, bio, followers, public email, repos). Uses the GitHub REST API; optional token for higher rate limits. For developer lead generation, OSS research and recruiting.

131 runs · 7 users · $0.0008 / item scraped

Hacker News Scraper

Scrape Hacker News stories, comments, Ask HN, Show HN, jobs and polls by keyword, points, comments and date range. Sort by relevance or newest. Title, URL, author, points, comment count, text and HN link. Fast clean HTTP via the HN Algolia API, no setup.

130 runs · 2 users · $0.004 / item scraped
Need a source that isn't here?

Send the site and the fields. We build it and you get it first.

Request a build