The pyopensky
Python library provides functions to download data from the OpenSky Network live API and historical databases. It aims at making ADS-B and Mode S data from OpenSky easily accessible in the Python programming environment.
Full documentation on https://open-aviation.github.io/pyopensky
pip install pyopensky
The library is also available on conda-forge:
conda install -c conda-forge pyopensky
Development mode (with uv):
curl -LsSf https://astral.sh/uv/install.sh | sh # Linux and MacOS
irm https://astral.sh/uv/install.ps1 | iex # Windows
uv sync --dev
See details in the documentation
Important
The Impala shell is now deprecated. Please upgrade to Trino.
-
from the REST API:
from pyopensky.rest import REST rest = REST() rest.states() rest.tracks(icao24) rest.routes(callsign) rest.aircraft(icao24, begin, end) rest.arrival(airport, begin, end) rest.departure(airport, begin, end)
-
from the Trino database (requires authentication):
from pyopensky.trino import Trino trino = Trino() # full description of the whole set of parameters in the documentation trino.flightlist(start, stop, *, airport, callsign, icao24) trino.history(start, stop, *, callsign, icao24, bounds) trino.rawdata(start, stop, *, callsign, icao24, bounds)