for line in input_file: try: if re.search('^#', line): # next continue data = [d.strip() for d in line.split(';')] #print data lat = data[DATA['LAT']] if data[DATA['LAT']] != '-' else "0" lng = data[DATA['LNG']] if data[DATA['LNG']] != '-' else "0" lat = re.sub(',', '.', lat) lng = re.sub(',', '.', lng) name = smart_unicode(data[DATA['NAME']]) city = City(name=name, slug=str_slugify(name), zipcode=int(data[DATA['ZIPCODE']]), point=GEOSGeometry('POINT( %s %s )' % (lng, lat), srid=SRID_DEFAULT), insee_code=int(data[DATA['INSEECODE']]), population=0) print city, city.slug city.save() except Exception, e: print "!!!!!!!!!!!!!!!!!!!!!", line, e finally: input_file.close() print "OK\n"