OurAirports Global Airport Database Scraper avatar

OurAirports Global Airport Database Scraper

Pricing

from $7.49 / 1,000 result items

Go to Apify Store
OurAirports Global Airport Database Scraper

OurAirports Global Airport Database Scraper

Scrapes the OurAirports public data files for airport records with ICAO and IATA codes, GPS coordinates, elevation, and classification. Filter by country, type, scheduled service, or geographic bounding box.

Pricing

from $7.49 / 1,000 result items

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

6 days ago

Last modified

Share

ParseForge

OurAirports Global Airport Database Scraper

Scrape the complete global airport database from OurAirports, up to a million records per run. Every airport comes with its ICAO and IATA codes, GPS coordinates, elevation, runway info, and scheduled service status. Export to CSV, JSON, Excel, or XML.

The OurAirports community dataset is the most complete free airport database on the web, but downloading and parsing the raw CSV files means manual work every time it updates. This Actor reads the live data directly, lets you filter by country, type, scheduled service, or a geographic bounding box, and returns each airport as a clean, flat row ready for your database or analysis.

Who uses itWhat they scrape OurAirports for
Aviation data analystsBuild a current, filterable master list of airports for a specific region or worldwide.
Travel app developersPopulate an airport picker or route planner with official codes and coordinates.
Logistics and cargo plannersIdentify all airports with scheduled service in a target country for network expansion.
Flight simulation enthusiastsGather real-world airport data to enhance scenery or navigation databases.

What it does

This Actor collects airport records from the OurAirports public data files and returns each one as a flat row with identifiers, location, elevation, and classification fields.

  • 🌍 Country filter: restrict results to a single ISO country code like US, GB, or JP.
  • 📏 Airport type: collect only large airports, small airports, heliports, seaplane bases, balloonports, or closed airfields.
  • 🛫 Scheduled service: toggle to return only airports with known commercial airline flights.
  • 🗺️ Bounding box: define a rectangular area by min and max latitude and longitude to scrape airports in a specific region.
  • 🔢 Item cap: set a hard limit from 1 to 1,000,000 airports per run to control dataset size.

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

What you can do with OurAirports data

🌐 Build a regional airport database.

An aviation data analyst runs the Actor with a country code and scheduled service enabled to get a clean list of commercial airports for a market report.

📱 Seed a travel app with airport codes.

A developer scrapes all medium and large airports worldwide to populate an autocomplete field with IATA codes and city names.

🗺️ Map airports in a specific area.

A GIS specialist sets a bounding box over Southeast Asia and collects all heliports and small airports for a humanitarian logistics planning map.

🛩️ Find seaplane bases for a niche directory.

A content creator filters by seaplane_base type and a country code to compile a directory of water landing sites for a general aviation website.

Why choose this scraper

What you get
Always up to dateReads the live OurAirports data on each run, not a stale snapshot.
One flat schemaEvery airport arrives with the same fields, ready for import into any tool.
No parsing workYou get structured JSON, CSV, Excel, or XML instead of raw CSV files to clean.
Geographic precisionFilter by bounding box to grab only the airports that matter for your map or analysis.

How it compares

No other Store actor targets OurAirports the same way, so the honest comparison is with the alternatives teams actually weigh.

OurAirports Global Airport Database ScraperBuild it in-houseBy hand
SetupRun it now, zero configDays of engineeringNone, but hours per pull
When OurAirports changesMaintained for youYou fix itYou re-learn the page
Proxies, retries, anti-botBuilt inYour problemBrowser only
OutputFixed JSON schema, CSV/Excel exportWhatever you buildCopy-paste
CostPay per resultEngineering timeAnalyst hours

Configure the run

Drive the Actor with an optional country code, airport type, scheduled service flag, and geographic bounding box, and filters run as each record is read so only matches reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

{
"maxItems": 10,
"country": "US"
}

A larger pull:

{
"maxItems": 200,
"country": "US"
}

Pricing

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

Results collectedApproximate cost
100 results$1.00
1,000 results$9.99
10,000 results$99.90

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 OurAirports Global Airport Database 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 OurAirports 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/ourairports-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 your country code is a valid ISO 3166-1 alpha-2 code. Also, if you set a bounding box, ensure the min and max latitude and longitude values define a valid area and that the box overlaps with land.

The run finished but my dataset is empty.

Your combination of filters may be too restrictive. Try removing the scheduled service flag or broadening the airport type to 'All Types' and run again.

I got fewer results than my maxItems setting.

This is normal. maxItems is an upper cap. The Actor returns every airport that matches your filters, and the total number of matching airports may be less than your cap.

The latitude and longitude values look wrong for my area.

The bounding box uses decimal degrees with negative values for south and west. For example, minLat=-34, maxLat=-30, minLon=18, maxLon=23 covers the Cape Town region.

Can I get the data in my local language?

The OurAirports dataset primarily uses English for airport names. Some records may include a local name field, but the data is not localized by this Actor.

FAQ

QuestionAnswer
Where does the data come from?The Actor reads the public data files maintained by the OurAirports community project at ourairports.com. It does not scrape the website's HTML pages.
How often is the OurAirports data updated?The OurAirports project publishes updates regularly as contributors add or correct airport information. Run this Actor whenever you need a fresh copy.
Can I get only airports with IATA codes?The Actor returns all matching airports. Many small airfields and heliports do not have IATA codes. You can filter the output afterward for rows where the IATA field is not empty.
What does the scheduled service filter do?It restricts results to airports that OurAirports marks as having scheduled commercial airline service. This excludes general aviation fields, private strips, and closed airports.
How do I filter for airports in one country?Set the Country Code input to the two-letter ISO 3166-1 alpha-2 code for that country, such as DE for Germany or BR for Brazil.
Can I scrape airports within a specific latitude and longitude box?Yes. Fill in the minLat, maxLat, minLon, and maxLon fields to define a bounding box. The Actor will return only airports whose coordinates fall inside that rectangle.
What export formats are available?You can export your dataset as JSON, CSV, Excel, or XML directly from the Apify platform after the run finishes.
Is there a limit on how many airports I can collect?You can set the maxItems field up to 1,000,000. The full OurAirports dataset contains around 60,000 airports, so the default limit is more than enough for a complete pull.
Does this Actor include runways or frequencies?The core airport record includes runway count and surface type summary fields. Detailed runway and frequency data are in separate OurAirports files and are not included in this Actor's output.
Can I get closed airports?Yes. Select 'Closed' from the Airport Type dropdown to collect only airports that are no longer operational.

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 OurAirports. 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.