| 
									
										
										
										
											2025-02-11 21:42:22 -05:00
										 |  |  | #! /usr/bin/env python3 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import argparse | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-02-22 13:53:54 -05:00
										 |  |  | from xmet.db    import Database | 
					
						
							|  |  |  | from xmet.radar import Radar | 
					
						
							|  |  |  | from xmet.wfo   import WFO | 
					
						
							| 
									
										
										
										
											2025-02-11 21:42:22 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | parser = argparse.ArgumentParser( | 
					
						
							| 
									
										
										
										
											2025-02-22 13:53:54 -05:00
										 |  |  |     description = 'Initialize NEXRAD radar site database table' | 
					
						
							| 
									
										
										
										
											2025-02-11 21:42:22 -05:00
										 |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-02-14 15:41:02 -05:00
										 |  |  | parser.add_argument('db',         help='Path to SQLite3 database') | 
					
						
							| 
									
										
										
										
											2025-02-11 21:42:22 -05:00
										 |  |  | parser.add_argument('radars-tsv', help='Path to NEXRAD radar station TSV file') | 
					
						
							| 
									
										
										
										
											2025-02-21 16:30:19 -05:00
										 |  |  | parser.add_argument('wfo-tsv',    help='Path to forecast office TSV file') | 
					
						
							| 
									
										
										
										
											2025-02-11 21:42:22 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | args = parser.parse_args() | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | db = Database.connect(args.db) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | db.execute('begin transaction') | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | for radar in Radar.each_from_tsv(getattr(args, 'radars-tsv')): | 
					
						
							| 
									
										
										
										
											2025-02-14 15:32:15 -05:00
										 |  |  |     db.add(radar) | 
					
						
							| 
									
										
										
										
											2025-02-11 21:42:22 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-02-21 16:30:19 -05:00
										 |  |  | for wfo in WFO.each_from_tsv(getattr(args, 'wfo-tsv')): | 
					
						
							|  |  |  |     db.add(wfo) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-02-11 21:42:22 -05:00
										 |  |  | db.commit() |