예제 #1
0
def main(file, sensor, begin, end, radius, stats, db, table):
    # Parse time string into datetime object
    begin = datetime.strptime(begin, '%Y-%m-%j')
    end = datetime.strptime(end, '%Y-%m-%j')
    # Read coordinates and table names from text file
    with open(file) as src:
        reader = csv.reader(src)
        for line in reader:
            try:
                lon = float(line[0])
                lat = float(line[1])
                site = line[2]
                # Extract data
                dict_list_0 = ts_extract(lon=lon,
                                         lat=lat,
                                         sensor=sensor,
                                         start=begin,
                                         end=end,
                                         radius=radius,
                                         stats=stats)
                print('Extracted %d records from Google Eath Engine' %
                      len(dict_list_0))
                # Prepare list of dictories ()
                dict_list_1 = relabel(dict_list_0, sensor)
                dict_list_2 = date_append(dict_list_1)
                # Write to db
                dictlist2sqlite(dict_list_2,
                                site=site,
                                sensor=sensor,
                                db_src=db,
                                table=table)
            except Exception as e:
                print('An error occured while extracting a site. %s' % e)
예제 #2
0
 def test_point(self):
     a = ts_extract(lon=4.722111, lat=44.770928, sensor='LC8', start=datetime(2015,1,1),
                    end=datetime(2016, 6, 1), radius = None, feature = None, bands = None,
                    stats = 'mean')
     self.assertTrue(len(a) > 2)
     self.assertTrue(isinstance(a[0], dict))
     self.assertEqual(set(a[0].keys()),
                      set(['id', 'B2', 'B3', 'B4', 'B5', 'B6', 'B7']))
예제 #3
0
 def test_point_radius_tm(self):
     a = ts_extract(lon=-3, lat=44.7, sensor='LT5', start=datetime(1999,1,1),
                    end=datetime(2005, 6, 1), radius = 300, feature = None, bands = None,
                    stats = 'median')
     self.assertTrue(len(a) > 2)
     self.assertTrue(isinstance(a[0], dict))
     self.assertEqual(set(a[0].keys()),
                      set(['id', 'B1', 'B2', 'B3', 'B4', 'B5', 'B7']))
예제 #4
0
def main(lon, lat, sensor, begin, end, radius, stats, db, table, site):
    # Parse time string into datetime object
    begin = datetime.strptime(begin, '%Y-%m-%j')
    end = datetime.strptime(end, '%Y-%m-%j')
    # Extract data
    dict_list_0 = ts_extract(lon=lon,
                             lat=lat,
                             sensor=sensor,
                             start=begin,
                             end=end,
                             radius=radius,
                             stats=stats)
    print('Extracted %d records from Google Eath Engine' % len(dict_list_0))
    # Prepare list of dictories ()
    dict_list_1 = relabel(dict_list_0, sensor)
    dict_list_2 = date_append(dict_list_1)
    # Write to db
    dictlist2sqlite(dict_list_2,
                    site=site,
                    sensor=sensor,
                    db_src=db,
                    table=table)