Flashscore Match Results Scraper avatar

Flashscore Match Results Scraper

Pricing

from $1.00 / 1,000 scraped match results

Go to Apify Store
Flashscore Match Results Scraper

Flashscore Match Results Scraper

Extract public Flashscore match results and fixtures with teams, scores, status, competition, times, and match URLs for sports analytics and dashboards.

Pricing

from $1.00 / 1,000 scraped match results

Rating

0.0

(0)

Developer

Muhammad Afzal

Muhammad Afzal

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Extract public Flashscore match results from competition, league, and results pages into a clean dataset for sports analytics, historical result collection, dashboards, and model training.

Extracted fields

Each record includes the home and away teams, scores, status, displayed time, competition, public match URL when available, source URL, and scrape timestamp. Optional fields are null when Flashscore does not expose them on the selected page.

Input

Provide one or more public Flashscore URLs, such as https://www.flashscore.com/football/england/premier-league/. Set maxResults from 1 to 500 and maxPages from 1 to 20. Login, betting, private, and authenticated URLs are not supported.

Output example

{
"matchId": "2H3kLmNq",
"competition": "Premier League",
"status": "Finished",
"homeTeam": "Arsenal",
"awayTeam": "Chelsea",
"homeScore": 2,
"awayScore": 1,
"matchUrl": "https://www.flashscore.com/match/2H3kLmNq/"
}

Pricing

Pay per event is configured at $0.001 per delivered dataset record, plus a $0.00005 run-start event. A 100-result run therefore has an event charge of about $0.10005, before any optional proxy/platform usage.

Reliability and limitations

The Actor uses public Flashscore pages and a bounded Playwright session. Residential proxy use is enabled by default for pages that challenge datacenter traffic. A challenge, empty page, or layout change is reported in OUTPUT; the Actor does not fabricate match records or bypass access controls. Flashscore page availability, language, and displayed history can vary by sport, country, and competition.

Use the data in accordance with Flashscore's terms, applicable law, and competition/data-rights requirements. This Actor is for public-page extraction only and does not access accounts, betting flows, or private data.

Use cases

  • Schedule repeatable collection and export results to downstream workflows.
  • Run a one-off research job and export the structured result as JSON, CSV, Excel, XML, or RSS from Apify.
  • Schedule the same input to monitor changes over time and send completed datasets to a webhook or integration.
  • Feed schema-shaped records into a database, spreadsheet, BI tool, or AI workflow with the source URL retained for verification.

Run Flashscore Match Results Scraper with the Apify API

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('muhammadafzal/flashscore-match-results-scraper').call({
"startUrls": [
{
"url": "https://www.flashscore.com/football/england/premier-league/"
}
],
"maxResults": 100,
"maxPages": 1,
"includeUpcoming": false,
"useResidentialProxy": true
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

You can also run the Actor from Apify Console, schedules, webhooks, the REST API, Make, Zapier, n8n, or the hosted Apify MCP server.

Responsible use

Use this Actor only for data you are authorized to access. Follow the target website's terms, robots and access policies, and applicable privacy, database, copyright, anti-spam, and data-protection laws. Do not use it to bypass authentication or other access controls, collect private data, harass people, or make high-impact decisions without independent verification.

Frequently asked questions

Can I schedule Flashscore Match Results Scraper?

Yes. Use an Apify schedule to run the same saved input at a chosen interval, then connect a webhook or integration to process the dataset when the run finishes.

How should I test a new input?

Begin with the prefilled example or a small limit. Confirm that the output fields, source coverage, runtime, and live charges match your workflow before increasing the scope.

How do I export the results?

Open the run's default dataset in Apify Console and export JSON, CSV, Excel, XML, or RSS. Applications can retrieve the same records through the Apify API client or REST dataset endpoint.

Can an AI agent call this Actor?

Yes. Add muhammadafzal/flashscore-match-results-scraper through the hosted Apify MCP server or call it through the API. The Actor's input and dataset schemas help agents construct valid requests and interpret returned records.

  1. Define the smallest useful scope. Choose a representative public URL, query, identifier, or filter and keep the first result limit low.
  2. Run and inspect. Check the run log, dataset item count, field coverage, source URLs, and live event or usage charges.
  3. Validate downstream assumptions. Confirm nullable fields, deduplication keys, timestamps, and any locale-specific formats before importing records into another system.
  4. Scale gradually. Increase limits or scheduling frequency only after the small run behaves as expected. Use Apify's maximum-cost and timeout controls to bound large jobs.
  5. Monitor changes. Keep a small known-good input as a canary. If the source layout or API changes, compare the new dataset with a previously validated run and report the run ID when requesting support.

For recurring workflows, store the exact Actor input with your pipeline configuration. This makes runs reproducible and helps distinguish a source-data change from an input change.