def __init__(self): fail_vals = ['M', 'N', '-1', '-2'] grade_level_fail_vals = fail_vals + ['UG', '00'] def unicode_str(s): return s.decode('utf8', 'ignore') def ccd_str(s): if s in fail_vals: return None return unicode_str(s) def ccd_int(s): if s in fail_vals: return None return int(s) def lat_lon(s): lat, lon = [float(v) for v in s.split(',')] return db.GeoPt(lat, lon) def grade_range(s): def _grade_level(v): if v == 'PK': return -1 elif v == 'KG': return 0 elif v in grade_level_fail_vals: return None return int(v) lo, hi = [_grade_level(v) for v in s.split(',')] return range(lo, hi + 1) if lo is not None and hi is not None else [] dummy = lambda x: None Loader.__init__(self, 'PublicSchool', [('school_id', unicode_str), ('name', unicode_str), ('address', ccd_str), ('city', ccd_str), ('state', ccd_str), ('zip_code', ccd_int), ('_dummy', dummy), # skip zip+4 ('enrollment', ccd_int), ('phone_number', ccd_str), ('locale_code', ccd_int), ('school_type', ccd_int), ('school_level', ccd_int), ('grades_taught', grade_range), # set grade levels ('_dummy', dummy), # skip highest_grade_level ('location', lat_lon), # set lat and lon ('_dummy', dummy), # skip longitude ('_dummy', dummy), # skip accuracy ])
def __init__(self): str_to_text = lambda x: x.decode('utf-8') str_to_date = lambda x: datetime.strptime(x, '%m %d %Y %H:%M') Loader.__init__(self, 'Article', [('title', str_to_text), ('description', str_to_text), ('cut', str_to_text), ('text', str_to_text), ('modified', str_to_date) ])
def __init__(self): fail_vals = ['M', 'N', '-1', '-2'] grade_level_fail_vals = fail_vals + ['UG', '00'] def unicode_str(s): return s.decode('utf8', 'ignore') def ccd_str(s): if s in fail_vals: return None return unicode_str(s) def ccd_int(s): if s in fail_vals: return None return int(s) def lat_lon(s): lat, lon = [float(v) for v in s.split(',')] return db.GeoPt(lat, lon) lo, hi = [_grade_level(v) for v in s.split(',')] return range(lo, hi + 1) if lo is not None and hi is not None else [] dummy = lambda x: None Loader.__init__( self, 'Listing', [ ('id', unicode_str), ('title', unicode_str), ('comments', unicode_str), ('mainPhoto', unicode_str), ('address', ccd_str), ('city', ccd_str), ('state', ccd_str), ('zip_code', ccd_int), ('_dummy', dummy), # skip zip+4 ('price', ccd_int), ('phone_number', ccd_str), ('locale_code', ccd_int), ('property_type', ccd_int), ('school_level', ccd_int), ('_dummy', dummy), # skip highest_grade_level ('location', lat_lon), # set lat and lon ('_dummy', dummy), # skip longitude ('_dummy', dummy), # skip accuracy ])
def __init__(self): str_to_text = lambda x: x.decode('utf-8') str_to_date = lambda x: datetime.strptime(x, '%m %d %Y %H:%M') Loader.__init__(self, 'Uzver', [('first_name', str_to_text), ('last_name', str_to_text), ('nick_name', str_to_text), ('email', str_to_text), ('password', str_to_text), ('avatar', str_to_text), ('created', str_to_date) ])
def __init__(self): fail_vals = ['M', 'N', '-1', '-2'] grade_level_fail_vals = fail_vals + ['UG', '00'] def unicode_str(s): return s.decode('utf8', 'ignore') def ccd_str(s): if s in fail_vals: return None return unicode_str(s) def ccd_int(s): if s in fail_vals: return None return int(s) def lat_lon(s): lat, lon = [float(v) for v in s.split(',')] return db.GeoPt(lat, lon) lo, hi = [_grade_level(v) for v in s.split(',')] return range(lo, hi + 1) if lo is not None and hi is not None else [] dummy = lambda x: None Loader.__init__(self, 'Listing', [('id', unicode_str), ('title', unicode_str), ('comments', unicode_str), ('mainPhoto', unicode_str), ('address', ccd_str), ('city', ccd_str), ('state', ccd_str), ('zip_code', ccd_int), ('_dummy', dummy), # skip zip+4 ('price', ccd_int), ('phone_number', ccd_str), ('locale_code', ccd_int), ('property_type', ccd_int), ('school_level', ccd_int), ('_dummy', dummy), # skip highest_grade_level ('location', lat_lon), # set lat and lon ('_dummy', dummy), # skip longitude ('_dummy', dummy), # skip accuracy ])
def __init__(self): Loader.__init__(self, 'DialysisCenter', [('location_id', self.trim_str), ('name', self.trim_str), ('address', self.trim_str), ('address2', self.trim_str), ('city', self.trim_str), ('state', self.trim_str), ('zip_code', self.trim_str), ('phone', self.trim_str), ('owner', self.trim_str), ('hemo', self.trim_str), ('pd', self.trim_str), ('location_id_geo_ref', self.trim_str), ('location', self.lat_lon), ('geoboxes', self.geo_box), ])
def __init__(self): Loader.__init__(self, 'HospitalInfo', [('hospital_id', self.trim_str), ('name', self.trim_str), ('address', self.trim_str), ('address2', self.trim_str), ('address3', self.trim_str), ('city', self.trim_str), ('state', self.trim_str), ('zip_code', self.trim_str), ('county', self.trim_str), ('phone', self.trim_str), ('hospital_type', self.trim_str), ('hospital_owner', self.trim_str), ('emergency_service', self.trim_str), ('hospital_id_geo_ref', self.trim_str), ('location', self.lat_lon), ('geoboxes', self.geo_box), ])
def __init__(self): fail_vals = ['M', 'N', '-1', '-2'] grade_level_fail_vals = fail_vals + ['UG', '00'] def unicode_str(s): return s.decode('utf8', 'ignore') def ccd_str(s): if s in fail_vals: return None return unicode_str(s) def ccd_int(s): if s in fail_vals: return None return int(s) def lat_lon(s): lat, lon = [float(v) for v in s.split(',')] return db.GeoPt(lat, lon) def grade_range(s): def _grade_level(v): if v == 'PK': return -1 elif v == 'KG': return 0 elif v in grade_level_fail_vals: return None return int(v) lo, hi = [_grade_level(v) for v in s.split(',')] return range(lo, hi + 1) if lo is not None and hi is not None else [] dummy = lambda x: None Loader.__init__( self, 'PublicSchool', [ ('school_id', unicode_str), ('name', unicode_str), ('address', ccd_str), ('city', ccd_str), ('state', ccd_str), ('zip_code', ccd_int), ('_dummy', dummy), # skip zip+4 ('enrollment', ccd_int), ('phone_number', ccd_str), ('locale_code', ccd_int), ('school_type', ccd_int), ('school_level', ccd_int), ('grades_taught', grade_range), # set grade levels ('_dummy', dummy), # skip highest_grade_level ('location', lat_lon), # set lat and lon ('_dummy', dummy), # skip longitude ('_dummy', dummy), # skip accuracy ])
def __init__(self): Loader.__init__(self, 'HospitalCondition', [('hospital_id', self.trim_str), ('condition', self.trim_str), ('score', self.trim_str) ])