def results(self): results_list = [] one_zipfile_contents = [] for theme in self.feature_selection.themes: for geom_type in self.feature_selection.geom_types(theme): basename = os.path.join(self.output_dir, slugify(theme) + "_" + geom_type) if os.path.isfile(basename + ".shp"): shpset = [ basename + ".shp", basename + ".cpg", basename + ".dbf", basename + ".prj", basename + ".shx", ] if self.per_theme: results_list.append( Artifact(shpset, Shapefile.name, theme=theme, basename=basename + ".shp")) else: one_zipfile_contents = one_zipfile_contents + shpset if not self.per_theme: results_list.append( Artifact(one_zipfile_contents, Shapefile.name, basename="shp")) return results_list
def results(self): if self.per_theme: results_list = [] for theme in self.feature_selection.themes: results_list.append( Artifact([ os.path.join(self.stage_dir, slugify(theme)) + ".gpkg" ], Geopackage.name, theme=theme)) return results_list else: return [Artifact([self.output_gpkg], Geopackage.name)]
def run(self, results_list): zips = [] for a in results_list: # the created zipfile must end with only .zip for the HDX # geopreview to work zipfile_name = self.job_name + "_" + os.path.basename( a.basename).replace('.', '_') + ".zip" zipfile_path = os.path.join(self.stage_dir, zipfile_name) with zipfile.ZipFile(zipfile_path, 'w', zipfile.ZIP_DEFLATED, True) as z: for filename in a.parts: z.write(filename, self.job_name + "_" + os.path.basename(filename)) if a.theme: z.writestr("README.txt", self.feature_selection.zip_readme(a.theme)) z.writestr("clipping_boundary.geojson", self.boundary_geom.json) target_path = os.path.join(self.target_dir, zipfile_name) shutil.move(zipfile_path, target_path) zips.append(target_path) # side effect self._zipped_resources.append( Artifact([os.path.basename(target_path)], a.format_name, theme=a.theme)) return zips
def results(self): results_list = [] one_zipfile_contents = [] for theme in self.feature_selection.themes: for geom_type in self.feature_selection.geom_types(theme): basename = os.path.join( self.output_dir, slugify(theme) + "_" + geom_type) + ".kml" if self.per_theme: results_list.append( Artifact([basename], KML.name, theme=theme)) else: one_zipfile_contents.append(basename) if not self.per_theme: results_list.append( Artifact(one_zipfile_contents, KML.name, basename="kml")) return results_list
def results(self): return [Artifact([self.output], self.name)]
def results(self): return [Artifact([self.output_xml], OSM_XML.name)]
def results(self): return [Artifact([self.output_pbf], OSM_PBF.name)]
import requests Configuration.create( hdx_site=os.getenv('HDX_SITE', 'demo'), hdx_key=os.getenv('HDX_API_KEY'), ) logging.basicConfig() f_s = FeatureSelection(F_S) extent = open('hdx_exports/adm0/GIN_adm0.geojson').read() h = HDXExportSet(dataset_prefix='demodata_test', name='Geopreview Test', extent=extent, feature_selection=f_s, locations=['GIN']) h.sync_resources([ Artifact(['hotosm_roads_gpkg.zip'], 'geopackage', theme='roads'), Artifact(['hotosm_roads_lines_shp.zip'], 'shp', theme='roads') ], 'http://exports-staging.hotosm.org/downloads/4fa2e396-a6bf-4476-829b-c88b953af42c' ) #pp = pprint.PrettyPrinter(indent=4) #headers = { # 'Authorization':os.getenv('HDX_API_KEY'), # 'Content-type':'application/json' # } #data = json.dumps({'id':'demodata_test_buildings'}) #resp = requests.post('https://demo-data.humdata.org/api/action/package_show',headers=headers,data=data) #print resp.json() #for r in resp.json()['result']['resources']: # pp.pprint(r)
def results(self): return [Artifact([self.output_pbf], UnfilteredPBF.name)]
Configuration.create( hdx_site=os.getenv('HDX_SITE', 'demo'), hdx_key=os.getenv('HDX_API_KEY'), ) logging.basicConfig() f_s = FeatureSelection.example("simple") extent = open('adm0/GIN_adm0.geojson').read() h = HDXExportSet(dataset_prefix='demodata_test', name='Guinea', extent=extent, feature_selection=f_s, locations=['GIN']) h.sync_resources( [Artifact(['foo_buildings_polygons.zip'], 'geopackage', theme=None)], 'http://example.com/') pp = pprint.PrettyPrinter(indent=4) headers = { 'Authorization': os.getenv('HDX_API_KEY'), 'Content-type': 'application/json' } data = json.dumps({'id': 'demodata_test_buildings'}) resp = requests.post( 'https://demo-data.humdata.org/api/action/package_show', headers=headers, data=data) print resp.json() for r in resp.json()['result']['resources']: pp.pprint(r)
def results(self): return [Artifact([self.work_dir + "/Osmand_2.obf"],OsmAndOBF.name)]
def results(self): return [Artifact([self.work_dir + "/gmapsupp.img"], GarminIMG.name)]