ParseForge Scrapers

OpenLigaDB Bundesliga Match Scraper

parseforge/openligadb-bundesliga-scraper

SportsAutomationIntegrations

Scrapes football match data from OpenLigaDB for Bundesliga, 2. Bundesliga, 3. Liga, DFB Pokal, and Champions League. Returns each match as a flat row with result, goals, teams, and matchday info.

Run this scraper See the API call
Total users
2
Monthly active
1
Total runs
85
Bookmarked
0
Rating
Not rated yet
Last modified
9 days ago

Overview

ParseForge

OpenLigaDB Bundesliga Match Scraper

Scrape Bundesliga match data from OpenLigaDB, by league, season, or matchday, up to a million matches per run. Every match comes with its result, goals, teams, and matchday info. No API key. Export to JSON, CSV, Excel, or XML.

OpenLigaDB's public API gives you German football data, but you still have to write the client, handle pagination, and map the JSON. This Actor reads the OpenLigaDB endpoints directly for Bundesliga, 2. Bundesliga, 3. Liga, DFB Pokal, and UEFA Champions League, and returns each match as one flat row. Pick a league and a season, optionally a single matchday, and get the data in your dataset.

Who uses it What they scrape OpenLigaDB for
Sports analysts Build historical match datasets for Bundesliga and other German leagues.
Fantasy football developers Feed match results and goals into fantasy league apps.
Betting modelers Get structured match outcomes for predictive modeling.
Football fans Archive match results for personal stats projects.

What it does

This Actor collects football match data from OpenLigaDB by league, season, and optional matchday, and returns each match as a flat row.

  • ⚽ League selection: 1. Bundesliga, 2. Bundesliga, 3. Liga, DFB Pokal, or UEFA Champions League.
  • πŸ“… Season filter: Set the starting year, e.g. 2023 for the 2023/2024 season.
  • πŸ”’ Matchday filter: Optional, leave empty to scrape the whole season.
  • πŸ“Š Flat output: Each match is one row with result, goals, teams, and matchday info.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with OpenLigaDB data

πŸ“ˆ Build a Bundesliga match database.

A sports analyst scrapes all matches for the 2023/2024 Bundesliga season to create a historical dataset for trend analysis.

πŸ“Š Feed a fantasy football app.

A developer scrapes match results and goals for the current season to update player scores in a fantasy league app.

🎯 Train a betting model.

A data scientist scrapes several seasons of DFB Pokal matches to train a model that predicts match outcomes.

πŸ“ Archive match results.

A football fan scrapes all matches for their favorite team's league to keep a personal archive of results.

Why choose this scraper

What you get
No API key The OpenLigaDB API is free and open, no registration needed.
Whole season or one matchday Scrape all matches or a specific matchday.
Multiple leagues Bundesliga, 2. Bundesliga, 3. Liga, DFB Pokal, and Champions League.
Flat schema Each match is a single row, ready for CSV or Excel.

How it compares

This Actor focuses on match data from OpenLigaDB with a simple league, season, and matchday selection, while competitors may offer additional stats or faster processing.

Feature ParseForge OpenLigaDB Football Scraper - Matches, Results & Teams (No Key) OpenLigaDB Football Stats Scraper Openligadb Scraper
Match results Yes Yes Yes Yes
League selection (Bundesliga, 2. Bundesliga, 3. Liga, DFB Pokal, Champions League) Yes Yes Yes Yes
Season filter Yes Not listed Not listed Not listed
Matchday filter Yes Not listed Yes Not listed
No API key required Yes Yes Not listed Not listed
Export to JSON, CSV, Excel, XML Yes Yes Not listed Not listed
League tables Not listed Not listed Yes Yes

Configure the run

Drive the Actor from a league slug, a season starting year, and an optional matchday number. The maxItems limit controls how many matches are returned, and free users get a 10-item preview. The Input tab lists every parameter.

A first run with the defaults:

{
 "maxItems": 10
}

A larger pull:

{
 "maxItems": 200
}

Pricing

Pay-per-result: $0.0085 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $0.85
1,000 results $8.50
10,000 results $85.00

New Apify accounts start with $5 in free credit.

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the OpenLigaDB Bundesliga Match Scraper.
  3. Set your inputs and any filters, then click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab.

Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live access to OpenLigaDB through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/openligadb-bundesliga-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check that the league slug is correct and the season is a valid starting year. Also, if you set a matchday, make sure that matchday exists for that season.

I get an error about maxItems.

Free users are limited to 10 items. If you need more, upgrade to a paid plan or set maxItems to 10 or less.

The output has fewer matches than expected.

OpenLigaDB may not have data for all matchdays in a season, especially for future matchdays. Check the season and matchday range.

Can I scrape multiple leagues in one run?

No, the Actor scrapes one league per run. You can run it multiple times with different league inputs.

The data seems outdated.

OpenLigaDB updates its data regularly, but there may be a delay. Try running the Actor again later.

FAQ

Question Answer
Do I need an API key for OpenLigaDB? No, OpenLigaDB is a free and open API. This Actor does not require any key or registration.
Which leagues can I scrape? You can scrape 1. Bundesliga, 2. Bundesliga, 3. Liga, DFB Pokal, and UEFA Champions League. Select the league slug in the input.
How do I scrape a whole season? Set the season to the starting year, for example 2023 for the 2023/2024 season, and leave the matchday field empty.
Can I scrape only one matchday? Yes, enter the matchday number in the matchday field. The Actor will return only matches from that matchday.
What is the maximum number of matches I can scrape? Paid users can scrape up to 1,000,000 matches. Free users are limited to 10 items as a preview.
What format is the output? The Actor returns each match as a flat row in JSON, and you can export to CSV, Excel, or XML from the Apify dataset.
Does this Actor include live scores? No, it scrapes the OpenLigaDB API for match data, which includes results and goals for completed matches. Live scores are not included.
Can I get team lineups or player stats? The Actor returns match-level data such as teams, goals, and result. It does not include detailed player statistics or lineups.
Is the data in German or English? The data comes from OpenLigaDB and may include German team names and league names. The schema fields are in English.
How often is the data updated? The Actor fetches data from OpenLigaDB at the time of the run. OpenLigaDB updates its data regularly, so you can schedule runs to get the latest matches.

Related actors

Browse the full ParseForge collection for more scrapers.

πŸ†˜ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by OpenLigaDB. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

Input

FieldTypeWhat it doesDefault
league string (5 options) OpenLigaDB league slug. bl1
season string Season starting year. For example 2023 means 2023/2024. 2023
matchday string Optional matchday number. Leave empty for the whole season. not set
maxItems integer Free users are limited to 10 items (preview). Paid users can collect up to 1,000,000 items. 10

Pricing

from $7.50 per 1,000 results

Charged forWhat it isPrice each
result Single result in the default dataset. $0.0075 to $0.0085

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

API

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST Β· run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~openligadb-bundesliga-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "helloWorld": 123
}

Reviews

No reviews yet. Be the first.

Issues

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

Related scrapers

Run OpenLigaDB Bundesliga Match Scraper on Apify All scrapers