#! /usr/bin/env python3 import argparse from xmet.db import Database from xmet.radar import Radar from xmet.wfo import WFO from xmet.igra import IGRAStation parser = argparse.ArgumentParser( description = 'Initialize NEXRAD radar site database table' ) parser.add_argument('db', help='Path to SQLite3 database') parser.add_argument('radars-tsv', help='Path to NEXRAD radar station TSV file') parser.add_argument('wfo-tsv', help='Path to forecast office TSV file') parser.add_argument('igra-stations', help='Path to IGRA station list') args = parser.parse_args() db = Database.connect(args.db) db.execute('begin transaction') for radar in Radar.each_from_tsv(getattr(args, 'radars-tsv')): db.add(radar) for wfo in WFO.each_from_tsv(getattr(args, 'wfo-tsv')): db.add(wfo) for station in IGRAStation.each_from_file(getattr(args, 'igra-stations')): db.add(station) db.commit()