marta实时铁路/总线api的包装器
martap的Python项目详细描述
马塔皮
Marta Realtime Rail和Bus API的Python包装: http://www.itsmarta.com/app-developer-resources.aspx
安装
要通过pip安装,只需:
$ pip install martapy
或者,从与setup.py:
$ python setup.py install
轨道
要获取列车到达列表:
frommartapyimportRailClientrail_client=RailClient(api_key="your_api_key")arrivals=rail_client.arrivals()
这将返回martapy.rail.Arrivals(list)的实例,该实例 有一些方便的方法可以进一步过滤结果。
例如,打印即将到来的目的地和等待时间 到达桃树中心站:
frommartapyimportRailClientrail_client=RailClient(api_key="your_api_key")peachtree_station=rail_client.arrivals().by_station('peachtree')forarrivalinpeachtree_station:print("To: {}, When: {}".format(arrival.destination,arrival.waiting_time))
- 输出如下:
- 收件人:机场,时间:到达 收件人:林德伯格,时间:16分钟 收件人:Doraville,时间:19分钟
过滤器
要缩小结果范围,martapy.rail.Arrivals(list)有 许多属性/方法:
- 按行到达: red_lineblue_linegreen_linegold_line
- 按方向到达: northboundeastboundwestboundsouthbound
- 按等待时间到达: boardingarrivingarrived
- 按站名分组的到达人数: Arrivals.stations
- 按train id分组的到达: Arrivals.trains
- 与特定站点关联的到达: Arrivals.by_station('station name')
为了得到更具体的结果,也可以将这些链接起来。例如,到 获取所有向南行驶的红线的到达人数:
frommartapy.railimportRailClientrail_client=RailClient(api_key="your_api_key")arrivals=rail_client.arrivals().red_line.southbound
其他属性
返回的每个Arrivals实例只是 martapy.rail.Arrival对象,具有类似于筛选器的属性 上方(车站、方向、事件时间、线路…)。得到原稿 json字符串返回,使用Arrival.json。
总线
要获取活动总线的列表:
frommartapyimportBusClientbus_client=BusClient()buses=bus_client.buses()
要获取特定路线号的活动总线,请使用 BusClient.buses(route=111)(或任何其他路线号)
若要进一步筛选此列表,请对返回的^{tt23}使用filter()。$ 列表。例如,只返回westbound总线:
frommartapyimportBusClientbus_client=BusClient()buses=bus_client.buses().filter(direction='Westbound')