예제 #1
0
                station['mode'] = 'metro'
            elif re.match("TXR|STR|FTD|FBT|FER|AIR|GAT", row[31]):
                # currently don't support taxis, ferries, or airports
                continue
            else:
                print("Unrecognized type: ", row[31])

            stations[station['mode']].append(station)

    for m in ['train', 'bus', 'metro']:
        with open(basepath + pluralize(m) + '/' + country + '.json', 'w') as f:
            f.write(json.dumps(stations[m]))


def do_import(mongo_uri, basepath):
    station_parsers = [
        ['UK', parse_uk],
    ]

    for parser in station_parsers:
        stations = parser[1](parser[0], basepath)
        print("Prepared", parser[0], "for import")


if __name__ == "__main__":
    from lib import get_mongo_config, get_basepath
    mongo_uri = get_mongo_config()
    basepath = get_basepath()

    do_import(mongo_uri, basepath)
예제 #2
0
#!/usr/bin/env python3

from lib import get_mongo_config, get_basepath, drop_and_recreate

if __name__ == "__main__":
    mongo_uri = get_mongo_config()
    basepath = get_basepath()

    import countries
    countries.do_import(mongo_uri, basepath)

    transports = ['bikes', 'metros', 'trains', 'buses']
    for t in transports:
        drop_and_recreate(mongo_uri, t)

    modules = map(__import__, transports)
    for m in modules:
        print("Importing", m.__name__)
        m.do_import(mongo_uri, basepath + m.__name__ + '/')