eurocontrolpy

eurocontrolpy is a Python client for the EUROCONTROL PRISME / Network Manager (NM) Oracle database. It provides two interchangeable backends that expose an identical API:

Class

Backend

EUROCONTROLpy

SQLAlchemy + oracledb. Returns pandas DataFrames. Best for notebooks and interactive work.

EUROCONTROLSpark

PySpark + Oracle JDBC. Returns Spark DataFrames. Best for large-scale distributed processing.

Both classes share the same SQL-building logic via the abstract base class _EUROCONTROLBase, so query results are always structurally identical regardless of the backend you choose.

Note

eurocontrolpy is a Python port of the eurocontrol R package originally designed by Enrico Spinielli. The Python package was developed by Quinten Goens with Enrico as co-author. See Authors for details.

from eurocontrolpy import EUROCONTROLpy

ec = EUROCONTROLpy()                          # reads PRU_DEV_* env vars
flights = ec.flights_tidy("2024-01-01", "2024-01-02")
print(flights.shape)

Project