In [1]:
import requests
In [9]:
SEQ_ID = 'translink/21'
LIMIT = 50
KEY = 'b96bda15-6fa4-45b5-b259-e31dd9a87350'
def get_gtfs_versions(feed_id, date=None, limit=LIMIT, key=KEY):
"""
Get from Transit Feeds (https://transitfeeds.com/) of the latest ``limit`` GTFS feed versions and return them as a chronologically sorted list of dictionaries.
If a date is given, then only include feeds released since the given date.
"""
url = "https://api.transitfeeds.com/v1/getFeedVersions"
params = {
'key': key,
'feed': feed_id,
'limit': limit,
}
r = requests.get(url, params=params)
r.raise_for_status()
versions = r.json()['results']['versions']
# Sort chronologically (by timestamp)
versions.sort(key=lambda x: x['ts'])
# Remove feeds earlier than given date
if date is not None:
versions = [v for v in versions
if ut.timestamp_to_str(v['ts'], ut.DATE_FORMAT) >= date]
return versions
def get_gtfs_dates(feed_id, date=None, limit=LIMIT, key=KEY):
"""
Get the latest ``limit`` GTFS release dates and return them as a chronologically ordered list.
If a date is given, then only include feeds on or after the given date.
Uses :func:`get_gtfs_versions`.
"""
versions = get_gtfs_versions(feed_id, date, limit, key)
return [ut.timestamp_to_str(v['ts'], ut.DATE_FORMAT)
for v in versions]
def get_gtfs(feed_id, date, path, key=KEY):
"""
Download from Transit Feeds the Auckland GTFS feed that was released on or just after the given date.
Save the feed to the given path (Path object) or a default path if none is given.
"""
# Configure download paremeters
versions = get_gtfs_versions(feed_id, date=date, key=key)
url = versions[0]['url']
gtfs_date = ut.timestamp_to_str(int(versions[0]['ts']), ut.DATE_FORMAT)
# Download
r = requests.get(url, stream=True)
r.raise_for_status()
with Path(path).open('wb') as tgt:
for chunk in r.iter_content(chunk_size=int(10e8)):
tgt.write(chunk)
In [10]:
get_gtfs_versions(SEQ_ID)
Out[10]:
[{'d': {'f': '20140921', 's': '20140707'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/1404905314',
'size': 20287979,
'ts': 1404905314,
'url': 'https://transitfeeds.com/p/translink/21/1404905314/download'},
{'d': {'f': '20140921', 's': '20140609'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/1405520140',
'size': 21589472,
'ts': 1405520140,
'url': 'https://transitfeeds.com/p/translink/21/1405520140/download'},
{'d': {'f': '20140921', 's': '20140609'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/1405660123',
'size': 21589472,
'ts': 1405660123,
'url': 'https://transitfeeds.com/p/translink/21/1405660123/download'},
{'d': {'f': '20141231', 's': '20140816'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/1408716376',
'size': 27050220,
'ts': 1408716376,
'url': 'https://transitfeeds.com/p/translink/21/1408716376/download'},
{'d': {'f': '20141231', 's': '20140816'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/1408937469',
'size': 27050383,
'ts': 1408937469,
'url': 'https://transitfeeds.com/p/translink/21/1408937469/download'},
{'d': {'f': '20141231', 's': '20140908'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/1410851179',
'size': 20817719,
'ts': 1410851179,
'url': 'https://transitfeeds.com/p/translink/21/1410851179/download'},
{'d': {'f': '20141231', 's': '20141013'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/1413810678',
'size': 19326784,
'ts': 1413810678,
'url': 'https://transitfeeds.com/p/translink/21/1413810678/download'},
{'d': {'f': '20141231', 's': '20141117'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/1416219951',
'size': 21126817,
'ts': 1416219951,
'url': 'https://transitfeeds.com/p/translink/21/1416219951/download'},
{'d': {'f': '20141231', 's': '20141117'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/1416396047',
'size': 21127058,
'ts': 1416396047,
'url': 'https://transitfeeds.com/p/translink/21/1416396047/download'},
{'d': {'f': '20150331', 's': '20141215'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/1418625037',
'size': 33679381,
'ts': 1418625037,
'url': 'https://transitfeeds.com/p/translink/21/1418625037/download'},
{'d': {'f': '20151231', 's': '20150119'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20150121',
'size': 21852820,
'ts': 1421849783,
'url': 'https://transitfeeds.com/p/translink/21/20150121/download'},
{'d': {'f': '20151231', 's': '20150223'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20150302',
'size': 21688655,
'ts': 1425298232,
'url': 'https://transitfeeds.com/p/translink/21/20150302/download'},
{'d': {'f': '20151231', 's': '20150325'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20150325',
'size': 24342741,
'ts': 1427301672,
'url': 'https://transitfeeds.com/p/translink/21/20150325/download'},
{'d': {'f': '20151231', 's': '20150420'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20150421',
'size': 22989116,
'ts': 1429607732,
'url': 'https://transitfeeds.com/p/translink/21/20150421/download'},
{'d': {'f': '20150630', 's': '20150506'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20150507',
'size': 17647245,
'ts': 1430999755,
'url': 'https://transitfeeds.com/p/translink/21/20150507/download'},
{'d': {'f': '20150831', 's': '20150525'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20150528',
'size': 20689115,
'ts': 1432872632,
'url': 'https://transitfeeds.com/p/translink/21/20150528/download'},
{'d': {'f': '20150927', 's': '20150622'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20150624',
'size': 22761230,
'ts': 1435151123,
'url': 'https://transitfeeds.com/p/translink/21/20150624/download'},
{'d': {'f': '20151031', 's': '20150720'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20150724',
'size': 25409092,
'ts': 1437723323,
'url': 'https://transitfeeds.com/p/translink/21/20150724/download'},
{'d': {'f': '20151030', 's': '20150916'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20150918',
'size': 19727113,
'ts': 1442641272,
'url': 'https://transitfeeds.com/p/translink/21/20150918/download'},
{'d': {'f': '20151130', 's': '20150930'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20151007',
'size': 21576694,
'ts': 1444209042,
'url': 'https://transitfeeds.com/p/translink/21/20151007/download'},
{'d': {'f': '20151231', 's': '20151028'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20151029',
'size': 20299652,
'ts': 1446119415,
'url': 'https://transitfeeds.com/p/translink/21/20151029/download'},
{'d': {'f': '20160131', 's': '20151116'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20151125',
'size': 23923201,
'ts': 1448516717,
'url': 'https://transitfeeds.com/p/translink/21/20151125/download'},
{'d': {'f': '20160331', 's': '20151214'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20151217',
'size': 28704436,
'ts': 1450409117,
'url': 'https://transitfeeds.com/p/translink/21/20151217/download'},
{'d': {'f': '20160430', 's': '20160120'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160124',
'size': 30424954,
'ts': 1453694418,
'url': 'https://transitfeeds.com/p/translink/21/20160124/download'},
{'d': {'f': '20160531', 's': '20160217'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160222',
'size': 23554666,
'ts': 1456207854,
'url': 'https://transitfeeds.com/p/translink/21/20160222/download'},
{'d': {'f': '20160630', 's': '20160309'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160314',
'size': 24785402,
'ts': 1457953895,
'url': 'https://transitfeeds.com/p/translink/21/20160314/download'},
{'d': {'f': '20160630', 's': '20160330'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160402',
'size': 26098188,
'ts': 1459611189,
'url': 'https://transitfeeds.com/p/translink/21/20160402/download'},
{'d': {'f': '20160630', 's': '20160425'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160428',
'size': 18265691,
'ts': 1461842355,
'url': 'https://transitfeeds.com/p/translink/21/20160428/download'},
{'d': {'f': '20160630', 's': '20160516'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160516',
'size': 19244066,
'ts': 1463395850,
'url': 'https://transitfeeds.com/p/translink/21/20160516/download'},
{'d': {'f': '20160831', 's': '20160608'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160615',
'size': 37516017,
'ts': 1466049206,
'url': 'https://transitfeeds.com/p/translink/21/20160615/download'},
{'d': {'f': '20160930', 's': '20160713'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160716',
'size': 25391908,
'ts': 1468694726,
'url': 'https://transitfeeds.com/p/translink/21/20160716/download'},
{'d': {'f': '20160930', 's': '20160722'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160722',
'size': 26484036,
'ts': 1469236706,
'url': 'https://transitfeeds.com/p/translink/21/20160722/download'},
{'d': {'f': '20161130', 's': '20160808'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160808',
'size': 25825140,
'ts': 1470713606,
'url': 'https://transitfeeds.com/p/translink/21/20160808/download'},
{'d': {'f': '20161130', 's': '20160823'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160825',
'size': 24762722,
'ts': 1472112086,
'url': 'https://transitfeeds.com/p/translink/21/20160825/download'},
{'d': {'f': '20161218', 's': '20160912'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20160912',
'size': 34044771,
'ts': 1473669566,
'url': 'https://transitfeeds.com/p/translink/21/20160912/download'},
{'d': {'f': '20161231', 's': '20161005'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20161007',
'size': 20111196,
'ts': 1475843966,
'url': 'https://transitfeeds.com/p/translink/21/20161007/download'},
{'d': {'f': '20161231', 's': '20161017'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20161018',
'size': 20056818,
'ts': 1476777266,
'url': 'https://transitfeeds.com/p/translink/21/20161018/download'},
{'d': {'f': '20161231', 's': '20161024'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20161025',
'size': 20539114,
'ts': 1477396526,
'url': 'https://transitfeeds.com/p/translink/21/20161025/download'},
{'d': {'f': '20161231', 's': '20161107'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20161107',
'size': 25080546,
'ts': 1478565146,
'url': 'https://transitfeeds.com/p/translink/21/20161107/download'},
{'d': {'f': '20170131', 's': '20161115'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20161117',
'size': 32973839,
'ts': 1479421166,
'url': 'https://transitfeeds.com/p/translink/21/20161117/download'},
{'d': {'f': '20170228', 's': '20161214'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20161214',
'size': 30672475,
'ts': 1481755530,
'url': 'https://transitfeeds.com/p/translink/21/20161214/download'},
{'d': {'f': '20170228', 's': '20161219'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20161219',
'size': 31175695,
'ts': 1482138086,
'url': 'https://transitfeeds.com/p/translink/21/20161219/download'},
{'d': {'f': '20170228', 's': '20161219'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20161219-2',
'size': 31175695,
'ts': 1482215726,
'url': 'https://transitfeeds.com/p/translink/21/20161219-2/download'},
{'d': {'f': '20170331', 's': '20161222'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20161222',
'size': 32041979,
'ts': 1482449726,
'url': 'https://transitfeeds.com/p/translink/21/20161222/download'},
{'d': {'f': '20170331', 's': '20161224'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20161224',
'size': 29082328,
'ts': 1482605906,
'url': 'https://transitfeeds.com/p/translink/21/20161224/download'},
{'d': {'f': '20170430', 's': '20170119'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20170119',
'size': 27790222,
'ts': 1484857106,
'url': 'https://transitfeeds.com/p/translink/21/20170119/download'},
{'d': {'f': '20170531', 's': '20170216'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20170216',
'size': 30617920,
'ts': 1487266406,
'url': 'https://transitfeeds.com/p/translink/21/20170216/download'},
{'d': {'f': '20170630', 's': '20170308'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20170310',
'size': 32696612,
'ts': 1489133726,
'url': 'https://transitfeeds.com/p/translink/21/20170310/download'},
{'d': {'f': '20170630', 's': '20170407'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20170406',
'size': 44436518,
'ts': 1491544166,
'url': 'https://transitfeeds.com/p/translink/21/20170406/download'},
{'d': {'f': '20170630', 's': '20170504'},
'f': {'id': 'translink/21',
'l': {'id': 10,
'lat': -27.471011,
'lng': 153.023449,
'n': 'Brisbane',
'pid': 9,
't': 'Brisbane QLD, Australia'},
't': 'TransLink SEQ GTFS',
'ty': 'gtfs',
'u': {'d': 'https://gtfsrt.api.translink.com.au/GTFS/SEQ_GTFS.zip',
'i': 'https://translink.com.au/about-translink/open-data'}},
'id': 'translink/21/20170504',
'size': 33227610,
'ts': 1493954366,
'url': 'https://transitfeeds.com/p/translink/21/20170504/download'}]
In [ ]:
Content source: araichev/affordability_nz
Similar notebooks: