コード例 #1
0
ファイル: pull-gtfs.py プロジェクト: Censio/gtfsdb
def process_source(source):
    try:
        gtfs = GTFS(filename=source)
        p_db = Database(url=db_string, is_geospatial=True)
        gtfs.load(p_db, filename=source)
    except Exception, e:
        print e
コード例 #2
0
ファイル: load.py プロジェクト: fgcartographix/gtfsdb
def main():
    # process command line args
    args = init_parser()
    # create database
    db = Database(args.database_url, args.schema, args.is_geospatial)
    db.create()
    # load GTFS into database
    gtfs = GTFS(args.file)
    gtfs.load(db)
コード例 #3
0
def loadToDatabase(writedir, name, gtfsfile):
    db_type = "sqlite:///"
    suffix = ".sqlite"
    dbpath = writedir + "/" + name + suffix
    dbname = db_type + dbpath

    print "storing into database as " + dbname

    db = Database(dbname, None, False)
    db.create()
    gtfs = GTFS(gtfsfile)
    gtfs.load(db)

    return dbpath
コード例 #4
0
def loadToDatabase(writedir, name, gtfsfile) :
    db_type = "sqlite:///"
    suffix = ".sqlite"
    dbpath = writedir + "/" + name + suffix
    dbname = db_type + dbpath
    
    print "storing into database as " + dbname
    
    db = Database(dbname, None, False)
    db.create()
    gtfs = GTFS(gtfsfile)
    gtfs.load(db)

    return dbpath
コード例 #5
0
def database_load(filename, **kwargs):
    '''Basic API to load a GTFS zip file into a database

    arguments:
        filename: URL or local path to GTFS zip file

    keyword arguments:
        batch_size: record batch size for memory management
        is_geospatial: if database is support geo functions
        schema: database schema name
        tables: limited list of tables to load
        url: SQLAlchemy database url
    '''
    db = Database(**kwargs)
    db.create()
    gtfs = GTFS(filename)
    gtfs.load(db, **kwargs)
    return db
コード例 #6
0
ファイル: validate.py プロジェクト: fgcartographix/gtfsdb
def main():
    args = init_parser()
    feed = GTFS(args.file)
    is_valid, stdout = feed.validate()
    sys.stdout.write(stdout)
コード例 #7
0
ファイル: api.py プロジェクト: Censio/gtfsdb
 def create_feed_obj(f_path):
     f_path = os.path.abspath(f_path)
     md5_sum = GTFS.gen_md5(f_path)
     return FeedFile(md5sum=md5_sum, date_added=upload_date, uploaded_by_user=user,
                     file_url=f_path, description='Manual Upload')
コード例 #8
0
ファイル: api.py プロジェクト: Censio/gtfsdb
def database_load(filename, db_url, **kwargs):
    db = Database(url=db_url, is_geospatial=True)
    gtfs = GTFS(filename=filename, file_id=kwargs.get('file_id'))
    gtfs.load(db)
コード例 #9
0
ファイル: pull-gtfs.py プロジェクト: Censio/gtfsdb
    print "Found {} Feeds".format(len(source_zips))


# sources = get_sources()
sources = []
# sources = ['/Users/rhunter/Desktop/action_20150129_0101.zip', '/Users/rhunter/Desktop/abq-ride_20150802_0107.zip']

# db_string = 'sqlite:///gtfs.db'
# db_string = 'postgresql://*****:*****@test-gtfs.cvklf6ftrsse.us-east-1.rds.amazonaws.com:5432/gtfs_data'

db_string = "postgresql://*****:*****@localhost:5432/gtfs_data"

db = Database(url=db_string, is_geospatial=True)
db.create()
try:
    GTFS.bootstrab_db(db)
except IntegrityError:
    pass

meta = {
    "dataexchange_id": "action",
    "file_url": "/Users/rhunter/Desktop/action_20150129_0101.zip",
    "file_name": "action_20150129_0101.zip",
    "file_checksum": "MD5123123123123",
    "date_added": 1213154234.0,
}

database_load(meta, db_url=db_string)


def process_source(source):