예제 #1
0
 def test_basic(self):
     from pprint import pprint
     from databundles.geo.geocoder import Geocoder               
     g = Geocoder(self.bundle.library)               
                  
     filename = "good_segments"
     f_input =  os.path.join(os.path.dirname(__file__),'support',filename + '.txt')
     f_output =  os.path.join(os.path.dirname(__file__),'support',filename + '.out.csv')
                
     with open(f_input) as f:
         for line in f:
             addr = line.strip()
             r  = g.geocode_address(addr)
             print "==", addr
             print "->",r
             if r:
                 print "  ", r['coded_address']
예제 #2
0
파일: bundle.py 프로젝트: hsd315/civicdata
 def test_geo(self):
     from databundles.geo.geocoder import Geocoder
     
     g = Geocoder(self.library, addresses_ds='geoaddresses')
     
     p = self.partitions.find(table='businesses')
     
     errorp = self.partitions.find_or_new(table='businesses', grain='errors')
     
     ok = 0
     errors = 0
     with errorp.database.inserter() as ins:
         for row in p.query('SELECT * FROM businesses'):
             candidates = g.geocode_address(row['address'], row['city'], 'CA')
     
             if len(candidates) != 1 :
                 #print "('{0}', (None, '{0}','gln')),".format(row['address'])
                 errors += 1
             else:
                 ok += 1
             
             print len(candidates), ok, errors, int(float(ok)/(ok+errors) * 100)
             ins.insert(row)