Index: src/django_gheat/gheat/management/commands/netstumbler.py
===================================================================
--- src/django_gheat/gheat/management/commands/netstumbler.py	(revision 9617)
+++ src/django_gheat/gheat/management/commands/netstumbler.py	(revision 9618)
@@ -5,12 +5,8 @@
 # Rick van der Zwet <info@rickvanderzwet.nl>
 #
-import sys
 import datetime
+from struct import unpack
 
-from struct import *
-
-def parse_netstumbler(filename):
-  fh = open(filename,'rb')
-  
+def parse_netstumbler(fh):
   def get_int32(size=1):
     v = unpack('<' + 'i'*size,fh.read(4*size))
@@ -43,4 +39,7 @@
     return v[0] if size == 1 else v
   
+  def get_mac():
+    return ':'.join(["%02X" % x for x in unpack('BBBBBB',fh.read(6))])
+
   data = {}
   
@@ -56,5 +55,5 @@
     ap["SSIDLength"] = SSIDLength
     ap["SSID"] = get_char(SSIDLength)
-    ap["BSSID"] = map(hex,unpack('BBBBBB',fh.read(6)))
+    ap["BSSID"] = get_mac()
     ap["MaxSignal"] = get_int32()
     ap["MinNoise"] = get_int32()
@@ -68,5 +67,5 @@
     DataCount = get_uint32()
     ap["DataCount"] = DataCount
-    ap["measurement"] = []
+    ap["measurements"] = []
     for c in range(0,DataCount):
       ms = {}
@@ -75,5 +74,5 @@
       ms["Noice"] = get_int32()
       LocationSource = get_int32()
-      ms["Location Source"] = LocationSource
+      ms["LocationSource"] = LocationSource
       if LocationSource == 1:
         ms["Latitude"] = get_double()
@@ -85,5 +84,5 @@
         ms["MagVariation"] = get_double()
         ms["Hdop"] = get_double()
-      ap["measurement"].append(ms)
+      ap["measurements"].append(ms)
     NameLength = get_uint8()
     ap["NameLength"] = NameLength
@@ -104,3 +103,7 @@
   return data
 
-print parse_netstumbler(sys.argv[1])
+if __name__ == '__main__':
+  import sys
+  import pprint
+  pp = pprint.PrettyPrinter(indent=2)
+  pp.pprint(parse_netstumbler(open(sys.argv[1],'r')))
