Chicago Transit Authority API
The CTA has three public endpoints for tracking CTA trains. This client supports those endpoints.
The CTAClient has methods for each endpoints. Namely,
- arrivals: Arrival information for a given station(s) or stop(s).
- follow: Follow specific train by runnumber.
- locations: Get all trains for a given route(s).
More endpoint specific documentation found here
This API requires a key which can be easily received here.
Follow the .env.example file for setting.
Installation
This package is available on pip. Install with:
$ pip install python-cta
Getting Started
from cta import CTAClient
damen_blue_line_mapid = 40590
# Get arrival information for damen blue line station.
cta_client = CTAClient()
arrival_response = cta_client.arrivals(mapid=damen_blue_line_mapid)
df_arrivals = arrival_response.to_frame()
print(df_arrivals)
# Follow specific train
runnumber = df_arrivals["rn"].tolist()[0]
follow_response = cta_client.follow(runnumber=runnumber)
df_follow = follow_response.to_frame()
print(df_follow)
from cta import Route
# Get the location of all Blue Line trains.
location_response = cta_client.locations(Route.BLUE)
df_locations = location_response.to_frame()
print(df_locations)
# Or all trains on the track
location_response = cta_client.locations(route=[route for route in Route])
df_locations = location_response.to_frame()
print(df_locations)
Information about the stations can be found with the Stations class. Below is an
example to find the mapid for Damen blue line.
from cta import Stations
stations = Stations()
df_stations = stations.data
print(df_stations)
df_damen = stations.lookup("Damen", route=Route.BLUE)
print(df_damen)
Try this example for yourself in scripts/readme_example.py
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
python-cta-0.0.2.tar.gz
(5.4 kB
view details)
File details
Details for the file python-cta-0.0.2.tar.gz.
File metadata
- Download URL: python-cta-0.0.2.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/4.0.0 CPython/3.9.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0fe3f1af84b2e71dc7ab980ed00ca66dd49ccbd902378c6e6bf133bd76bee97d
|
|
| MD5 |
c1911f7d31461268c55dc1b7cdef0b47
|
|
| BLAKE2b-256 |
e92609ddf49135f0ea2272814815f43aff19e62953cf3bca6b23dda2a3405ec4
|