Equibase US Horse Racing Scraper avatar

Equibase US Horse Racing Scraper

Pricing

from $10.00 / 1,000 results

Go to Apify Store
Equibase US Horse Racing Scraper

Equibase US Horse Racing Scraper

Scrape US Thoroughbred horse racing data from Equibase.com — the official source for North American racing. Extract race entries (horses, jockeys, trainers, odds) and results (finish order, times, payouts) for any date and track.

Pricing

from $10.00 / 1,000 results

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Scrape US Thoroughbred horse racing data from Equibase.com — the official source for North American racing information. Extract race entries (horses, jockeys, trainers, morning line odds) and results (finish order, payouts, winning times) for any date and track.

How it works

Equibase serves all race data as pre-rendered static HTML files. The site is protected by Imperva/Incapsula bot detection, which blocks plain HTTP requests. This actor uses a two-step approach:

  1. Cookie extraction: A headless Chromium browser visits the site, solves the Imperva JS challenge, and extracts the session cookies.
  2. Static HTML scraping: The cookies are reused to fetch the race pages via plain HTTP. The HTML is parsed with Cheerio to extract structured data.

No API calls, no JavaScript rendering needed for the data itself — just static HTML files with clean, parseable content.

Input

FieldTypeDescription
raceDatestringDate to scrape in MM/DD/YYYY format. Use today/future for entries, past for results.
trackCodesarrayOptional track codes to filter (e.g. BEL, CD, SA, GP). Empty = all tracks.
dataModeselectentries, results, or both (default: both)
maxItemsintegerMax records to push (default: 100)
maxRacesintegerMax races per track. 0 = all (default: 0)

Output

Entries (pre-race)

Each record is a horse in a race:

  • raceDate, track, raceNumber — race identification
  • raceType, purse, distance, surface, postTime, starters — race metadata
  • programNumber, postPosition — horse position
  • horse, horseState, ageSex, medication — horse details
  • jockey, weight, trainer — connections
  • morningLineOdds — morning line
  • owners, breeders, pedigree, equipmentChanges — extra info

Results (post-race)

Each record is a finisher in a race:

  • raceDate, track, raceNumber — race identification
  • raceType, purse, distance, trackCondition, winningTime — race metadata
  • ageRestriction, sexRestriction, offTime — race conditions
  • finishPosition, programNumber, horse, jockey — finish order
  • winPayoff, placePayoff, showPayoff — payouts
  • alsoRan, scratches — non-finishers
  • wagers — exacta, trifecta, superfecta payoffs
  • winningBreeder, winningOwner, winningTrainer, winningSire — winning connections

Track codes

Common US Thoroughbred track codes: BEL (Belmont Park), CD (Churchill Downs), SA (Santa Anita), GP (Gulfstream Park), AQU (Aqueduct), SAR (Saratoga), DMR (Del Mar), TLS (Turf Paradise), PRX (Parx), MTH (Monmouth), DEL (Delaware Park), KEE (Keeneland), TAM (Tampa Bay), WO (Woodbine), and more.

URL patterns

The actor constructs URLs following these patterns:

Entries race card: /static/entry/RaceCardIndex{TRACK}{MMDDYY}{COUNTRY}-EQB.html
Entries race: /static/entry/{TRACK}{MMDDYY}{COUNTRY}{RACENUM}-EQB.html
Results race card: /static/chart/summary/RaceCardIndex{TRACK}{MMDDYY}{COUNTRY}-EQB.html
Results race: /static/chart/summary/{TRACK}{MMDDYY}{COUNTRY}{RACENUM}-EQB.html