SDK for FlightRadar24
Project description
FlightRadarAPI
Unofficial SDK for FlightRadar24 written in Python 3.
If you want to use the data collected using this SDK commercially, you need to subscribe to the Business plan.
See more information at: https://www.flightradar24.com/terms-and-conditions
Installing FlightRadarAPI:
pip install FlightRadarAPI
Basic Usage:
Import the class FlightRadar24API
and create an instance of it.
from FlightRadar24 import FlightRadar24API
fr_api = FlightRadar24API()
Getting flights list:
flights = fr_api.get_flights(...) # Returns a list of Flight objects
Getting airports list:
airports = fr_api.get_airports(...) # Returns a list of Airport objects
Getting airlines list:
airlines = fr_api.get_airlines()
Getting zones list:
zones = fr_api.get_zones()
Getting flight and airport details
You can also get more information about a specific flight such as: estimated time, trail, aircraft details, etc.
flight_details = fr_api.get_flight_details(flight)
flight.set_flight_details(flight_details)
print("Flying to", flight.destination_airport_name)
Or get more information about a specific airport such as: runways, weather, arrived flights, etc.
airport_details = fr_api.get_airport_details(icao)
Arrivals and departures can have a limit flight_limit
(max value is 100) to display. When you need to reach more than 100 flights you can use additional parameter page
to view other pages.
Get flights above your position:
The get_bounds_by_point(...)
method has parameters latitude
and longitude
for your position and radius
for the distance in meters from your position to designate a tracking area.
# Your point is 52°34'04.7"N 13°16'57.5"E from Google Maps and radius 2km
bounds = fr_api.get_bounds_by_point(52.567967, 13.282644, 2000)
flights = fr_api.get_flights(bounds = bounds)
Filtering flights and airports:
The get_flights(...)
method has some parameters to search for flights by: area line, bounds (customized coordinates
or obtained by the get_zones()
method), aircraft registration or aircraft type. See the example below:
airline_icao = "UAE"
aircraft_type = "B77W"
# You may also set a custom region, such as: bounds = "73,-12,-156,38"
zone = fr_api.get_zones()["northamerica"]
bounds = fr_api.get_bounds(zone)
emirates_flights = fr_api.get_flights(
aircraft_type = aircraft_type
airline = airline_icao,
bounds = bounds
)
There are more configurations that you may set by using the set_flight_tracker_config(...)
method. See the method documentation
for more information.
Getting airport by ICAO or IATA:
lukla_airport = fr_api.get_airport(code = "VNLK", details = True)
Getting the distance between flights and airports:
The Flight
and Airport
classes inherit from Entity
, which contains the get_distance_from(...)
method. That method
returns the distance between the self instance and another entity in kilometers. Example:
airport = fr_api.get_airport("KJFK")
distance = flight.get_distance_from(airport)
print(f"The flight is {distance} km away from the airport.")
Setting and getting Real-time Flight Tracker parameters:
Set it by using the set_flight_tracker_config(...)
method. It receives a FlightTrackerConfig
dataclass instance, but
you can also use keyword arguments directly to the method.
Get the current configuration with the get_flight_tracker_config()
method, that returns a FlightTrackerConfig
instance. Note: creating a new FlightTrackerConfig
instance means resetting all parameters to default.
flight_tracker = fr_api.get_flight_tracker_config()
flight_tracker.limit = 10
fr_api.set_flight_tracker_config(flight_tracker, ...)
flights = fr_api.get_flights(...) # Returns only 10 flights
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for flightradarapi-1.3.17-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 77bf5f8c5fe0dd6468cc83d1c3a22bca55657ffb3b0ae045b8b80b4b05530473 |
|
MD5 | 03d01813021f0c970cdbdc02122d2730 |
|
BLAKE2b-256 | ab92271ba3b06aa77c5fac8863fa32939f1af177e6e50e4a8f3dda669e6e899d |