9571
|
1 #! /usr/bin/env python
|
|
2
|
|
3 import csv
|
|
4 import sys
|
|
5
|
|
6 if len(sys.argv) < 3: sys.stderr.write('usage: airport any|name|iata|icao key\n'); sys.exit(1)
|
|
7 kind, q = sys.argv[1], ' '.join(sys.argv[2:])
|
|
8
|
|
9 fieldnames = dict(name=1, iata=4, icao=5)
|
|
10 if kind == 'any': fields = [1, 4, 5]
|
|
11 elif kind in fieldnames: fields = [fieldnames[kind]]
|
|
12 else: sys.stderr.write('unknown search type: %s\n' % kind); sys.exit(1)
|
|
13
|
|
14 def f(s): return s if s and s != '\N' else '?'
|
|
15
|
|
16 with open('share/airports.dat', 'rb') as datafile:
|
|
17 for row in csv.reader(datafile):
|
|
18 for fi in fields:
|
|
19 if q.lower() in row[fi].lower():
|
|
20 print '%s (%s, %s)' % (row[1], f(row[4]), f(row[5]))
|