diff options
| author | Yuval Adam <yuv.adm@gmail.com> | 2013-11-29 15:47:15 +0200 |
|---|---|---|
| committer | Yuval Adam <yuv.adm@gmail.com> | 2013-11-29 15:47:15 +0200 |
| commit | 9a728cc507ef949ef99052756e99d72951936230 (patch) | |
| tree | 625e7661959fde72542af781997ed5a4dba2fb32 | |
| parent | b4d783848cddf27adb2e6635e9200462c5a98927 (diff) | |
Bug fixing and cleanupv0.1
| -rwxr-xr-x | kismet-gps-tools.py | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/kismet-gps-tools.py b/kismet-gps-tools.py index 6f6ab7d..eed1d59 100755 --- a/kismet-gps-tools.py +++ b/kismet-gps-tools.py @@ -18,7 +18,7 @@ class WirelessNetwork(object): self.lng = lng -class ShapeFileSerializer(object): +class ShapefileSerializer(object): _serializer_id = 'shapefile' def __init__(self, networks): @@ -27,11 +27,13 @@ class ShapeFileSerializer(object): self.networks = networks def serialize(self): + logging.info('Applying Shapefile Serializer') w = shapefile.Writer(shapefile.POINT) for network in self.networks: logging.debug('Adding point: {},{}'.format(network.lat, network.lng)) - w.point(network.lat, network.lng) - w.save('test') + w.point(network.lng, network.lat) + w.save('shapefiles/networks') + logging.info('Saved shapefiles to shapefiles/networks.*') class KMLSerialzier(object): @@ -49,6 +51,7 @@ class NetXMLParser(object): self.filename = filename def parse(self): + logging.info('Parsing input file {}'.format(self.filename)) root = ET.parse(self.filename).getroot() wireless_networks = root.iter('wireless-network') return filter(None, [self.parse_network(network) for network in wireless_networks]) @@ -62,12 +65,14 @@ class NetXMLParser(object): lat = float(gpsinfo.find('avg-lat').text) lng = float(gpsinfo.find('avg-lon').text) return WirelessNetwork(essid, lat, lng) - return None + else: + logging.debug('Skipping network due to partial data') + return None def run(input_filename, output_format): networks = NetXMLParser(input_filename).parse() - for c in (KMLSerialzier, ShapeFileSerializer): + for c in (KMLSerialzier, ShapefileSerializer): if c._serializer_id == output_format: serializer = c(networks) serializer.serialize() @@ -77,13 +82,13 @@ if __name__ == '__main__': parser = argparse.ArgumentParser(description='Kismet GPS Tools') parser.add_argument('-i', '--input-file', metavar='input_file', type=str, help='netxml input file', required=True) parser.add_argument('-f', '--output-format', metavar='output_format',type=str, - choices=[c._serializer_id for c in (KMLSerialzier, ShapeFileSerializer)], + choices=[c._serializer_id for c in (KMLSerialzier, ShapefileSerializer)], help='output file format', required=True) parser.add_argument('-v', '--verbose', help='verbose output', action='store_true', default=False) args = parser.parse_args() if args.verbose: - logging.basicConfig(level=logging.DEBUG) + logging.basicConfig(level=logging.INFO) run(args.input_file, args.output_format) |
