Download and parse data from flightradar24.com with gRPC/JSON
MIT License
Bot releases are visible (Hide)
NearestFlights
: get list of live aircraft from centrepoint and radiusLiveFlightsStatus
: get live aircraft location and statusFollowFlight
: streaming API, sends updates of aircraft state vectors; effectively the side panel clickhandler JSON endpointTopFlights
: effectively /flights/most-tracked JSON endpointLiveTrail
: get list of aircraft state vectors for a live flightlivefeed
renamed to live_feed
in all placesfr24.json
and fr24.grpc
namespaces for clarity.Full Changelog: https://github.com/cathaypacific8747/fr24/compare/v0.1.2...v0.1.3
Published by github-actions[bot] 4 months ago
This release introduces a major refactor of the core, while keeping most of the low-level functions untouched.
core class significantly redesigned to make components less coupled and data location easier to track (https://github.com/cathaypacific8747/fr24/pull/24)
v0.1.1
used a service based approach:async with FR24() as fr24:
fl = fr24.flight_list("id")
fl.data.load() # read flight_list/{id}.parquet
response = await fl.api.fetch() # optional parameters goes here, e.g. page, limit
fl.data.add_api_response(response) # json -> pyarrow
fl.data.save() # write flight_list/{id}.parquet
v0.1.2
uses an approach which implement a series of type-transformations:async with FR24() as fr24:
response = await fr24.flight_list.fetch(reg="id") # FlightListAPIResp { ctx: {"id": "{id}", ...}, response: json }
data = response.to_arrow() # FlightListArrow { ctx: ..., table: pyarrow.Table }
print(data.df) # pd.DataFrame
data.save()
protobuf definitions now adhere to official naming and structure (https://github.com/cathaypacific8747/fr24/pull/24/commits/f9e2421bf9624ec7b0eabc7aada7d2e4ace496f7)
library now makes a clear distinction between heading and track: LiveFeedRecord
, TrackData
, PlaybackTrackEMSRecord
, FlightListRecord
are updated (https://github.com/cathaypacific8747/fr24/pull/24/commits/345b8cdeb99e25e3410f80a9aeda255597e048ed)
flight_list_df
and playback_df
now calls their proxy *_arrow
functions to ensure consistent data types (https://github.com/cathaypacific8747/fr24/pull/24/commits/3edf4477455e432cc4ad89727912f63012cd16c3)
flight_list_df
timestamp are now milliseconds, flight_id
and icao24
no longer floats.playback_df
now serialises ems
and metadata.find
now accepts optional httpx.AsyncClient
parameter
fields
parameter-o
, --output
: supports saving to specific directory or stdout (-
)-f
, --format
: supports saving to parquet
or csv
Full Changelog: https://github.com/cathaypacific8747/fr24/compare/v0.1.1...v0.1.2
Published by github-actions[bot] 7 months ago
Published by cathaypacific8747 10 months ago
Basic features: