European Parliament MEP Disclosures Scraper avatar

European Parliament MEP Disclosures Scraper

Pricing

from $19.00 / 1,000 results

Go to Apify Store
European Parliament MEP Disclosures Scraper

European Parliament MEP Disclosures Scraper

Scrapes MEP financial disclosures from the European Parliament's public register. Returns each declaration as a flat row with the member's name, country, declaration type, dates, and the full declared activity or interest.

Pricing

from $19.00 / 1,000 results

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

1

Bookmarked

1

Total users

0

Monthly active users

3 days ago

Last modified

Share

ParseForge

European Parliament MEP Disclosures Scraper

Scrape MEP financial disclosures from the European Parliament's public register, up to a million per run. Each record captures the member's name, country, declaration type, dates, and the full declared activity or interest. No login or API key. Export to CSV, JSON, Excel, or XML.

The European Parliament publishes every MEP's financial declarations on its website, but browsing them one by one through the web interface is slow and you cannot export the data in bulk. This Actor reads the public disclosure feeds directly, collects each declaration into a flat row, and lets you download the complete dataset in one go. It is built for transparency researchers, journalists, and compliance teams who need the full picture of MEPs' outside interests.

Who uses itWhat they scrape European Parliament for
Transparency researchersMapping which industries and organizations are declaring financial ties to sitting MEPs.
Investigative journalistsFinding potential conflicts of interest ahead of a key committee vote or report.
NGO compliance analystsMonitoring whether MEPs are meeting their declaration obligations on time.
Political data platformsEnriching a member profile database with up-to-date outside activity records.

What it does

This Actor collects MEP financial disclosures from the European Parliament's public register and returns each declaration as a flat row.

  • 🇪🇺 Full register coverage: collects every disclosure type, including gifts, paid activities, and support staff declarations.
  • 📅 Declaration dates: captures the date each declaration was made and the period it covers.
  • 🔢 Bulk collection: set a maximum from 1 to 1,000,000 disclosures and let the Actor run until it hits the limit.
  • 📄 Flat row output: every declaration lands in your dataset as one row, ready for pivot tables and joins.

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

What you can do with European Parliament data

📋 Build a conflict-of-interest watchlist.

A transparency NGO collects all current MEP disclosures, filters for paid board memberships, and cross-references the list against upcoming legislative votes.

🗞️ Investigate lobbying patterns before a vote.

A journalist scrapes the full register a week before a major committee decision, looking for gifts or travel funded by companies in the affected sector.

📊 Feed a public integrity dashboard.

A civic-tech platform runs the Actor monthly, loads the rows into a database, and displays each MEP's outside interests on a public-facing profile page.

⏱️ Monitor late declarations.

A compliance researcher compares the declaration dates against the official deadlines and flags members who filed more than 30 days late.

Why choose this scraper

What you get
One fixed schemaEvery disclosure arrives with the same columns, no matter the type or country.
No API registrationReads the public register directly so you skip OAuth, keys, and rate-limit paperwork.
Runs on ApifySchedule it daily or weekly and get fresh declarations pushed to your storage or pipeline.

Configure the run

Set the maximum number of disclosures to collect per run, from a single test record up to a million. The Input tab lists every parameter.

A first run with the defaults:

{
"maxItems": 10
}

A larger pull:

{
"maxItems": 200
}

Pricing

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

Results collectedApproximate cost
100 results$2.10
1,000 results$21.00
10,000 results$210.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 European Parliament MEP Disclosures 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 European Parliament 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/european-mep-disclosures-scraper"

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

Troubleshooting

Why am I getting zero results?

Check that the European Parliament disclosure register is reachable from your browser. If the site is down or has changed its layout, the Actor may return an empty dataset until the selectors are updated.

The run stopped before reaching my maxItems limit.

The Actor stops when it has collected the number you set or when it runs out of available disclosures on the register. If you set a very high number, it may finish early because there are no more records to read.

Some fields are empty in my dataset.

Not every disclosure includes every field. Some MEPs may leave certain sections blank, and older declarations sometimes have less detail than newer ones. Empty cells reflect what the register itself shows.

The run is taking a long time.

Collecting tens of thousands of disclosures takes time because the Actor respects the Parliament's servers. Lower the maxItems value for a faster test, or let the full run complete on a schedule.

I see a different number of results than I expected.

The Actor counts each individual disclosure as one row. One MEP can have multiple declarations, so the row count will be higher than the number of members if you collect the full register.

FAQ

QuestionAnswer
What exactly is a MEP disclosure?It is a public declaration that every Member of the European Parliament must file, listing outside paid activities, gifts, travel paid by third parties, and support staff. The European Parliament publishes them in a searchable online register.
Do I need an API key or login to scrape the register?No. The Actor reads the same public feeds that the European Parliament website uses, so you do not need to register an app or manage OAuth tokens.
How many disclosures can I collect in one run?You set the maximum with the input field. The default is 10 for a quick test, and you can raise it up to 1,000,000 per run.
Which fields does each row contain?Each row includes the MEP's name, country, the type of declaration, the date it was filed, the period it covers, and the full text of the declared activity or interest.
Can I filter by country or declaration type before scraping?The Actor collects the full register and returns every matching row. You can filter the output in your spreadsheet or database after the run finishes.
How often is the data updated?The Actor reads the live register on each run, so you get whatever declarations are publicly available at that moment. Schedule it daily to catch new filings.
Can I export the results to Excel?Yes. Apify supports CSV, JSON, Excel, and XML exports from the dataset tab, and you can push the data to a webhook or cloud storage.
Does this cover all EU member states?Yes. The register includes MEPs from every member state, and the country field tells you which one each member represents.
Is this legal to scrape?The European Parliament publishes these disclosures as public information. The Actor reads only the publicly accessible feeds without logging in. You should still review the Parliament's terms of use for your specific use case.
What happens if the Parliament changes its website?The Actor is maintained to track changes in the register's structure. If a change breaks the scraper, report it and the maintainer will update the selectors.

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 European Parliament. 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.