add download rules for WDPA land and marine
This commit is contained in:
parent
b1c651f6f3
commit
091584bb0d
@ -220,6 +220,65 @@ if config["enable"]["retrieve"]:
|
|||||||
RESOURCES + "Copernicus_LC100_global_v3.0.1_2019-nrt_Discrete-Classification-map_EPSG-4326.tif",
|
RESOURCES + "Copernicus_LC100_global_v3.0.1_2019-nrt_Discrete-Classification-map_EPSG-4326.tif",
|
||||||
run: move(input[0], output[0])
|
run: move(input[0], output[0])
|
||||||
|
|
||||||
|
|
||||||
|
if config["enable"]["retrieve"]:
|
||||||
|
|
||||||
|
from datetime import datetime
|
||||||
|
current_month = datetime.now().strftime('%b')
|
||||||
|
current_year = datetime.now().strftime('%Y')
|
||||||
|
bYYYY = f"{current_month}{current_year}"
|
||||||
|
|
||||||
|
|
||||||
|
# Downloading protected area database from WDPA
|
||||||
|
# extract the main zip and then merge the contained 3 zipped shapefiles
|
||||||
|
# Website: https://www.protectedplanet.net/en/thematic-areas/wdpa
|
||||||
|
rule download_wdpa:
|
||||||
|
input:
|
||||||
|
HTTP.remote(
|
||||||
|
f"d1gam3xoknrgr2.cloudfront.net/current/WDPA_{bYYYY}_Public_shp.zip",
|
||||||
|
static=True,
|
||||||
|
keep_local=True,
|
||||||
|
)
|
||||||
|
params:
|
||||||
|
zip=RESOURCES + f"WDPA_{bYYYY}_shp.zip",
|
||||||
|
folder=directory(RESOURCES + f"WDPA_{bYYYY}"),
|
||||||
|
output:
|
||||||
|
gpkg=RESOURCES + f"WDPA_{bYYYY}.gpkg",
|
||||||
|
run:
|
||||||
|
shell("cp {input} {params.zip}")
|
||||||
|
shell("unzip -o {params.zip} -d {params.folder}")
|
||||||
|
for i in range(3):
|
||||||
|
# vsizip is special driver for directly working with zipped shapefiles in ogr2ogr
|
||||||
|
layer_path = f"/vsizip/{params.folder}/WDPA_{bYYYY}_Public_shp_{i}.zip"
|
||||||
|
print(f"Adding layer {i+1} of 3 to combined output file.")
|
||||||
|
shell("ogr2ogr -f gpkg -update -append {output.gpkg} {layer_path}")
|
||||||
|
|
||||||
|
|
||||||
|
# Downloading Marine protected area database from WDPA
|
||||||
|
# extract the main zip and then merge the contained 3 zipped shapefiles
|
||||||
|
# Website: https://www.protectedplanet.net/en/thematic-areas/marine-protected-areas
|
||||||
|
rule download_wdpa_marine:
|
||||||
|
input:
|
||||||
|
HTTP.remote(
|
||||||
|
f"d1gam3xoknrgr2.cloudfront.net/current/WDPA_WDOECM_{bYYYY}_Public_marine_shp.zip",
|
||||||
|
static=True,
|
||||||
|
keep_local=True,
|
||||||
|
),
|
||||||
|
params:
|
||||||
|
zip=RESOURCES + f"WDPA_WDOECM_{bYYYY}_marine.zip",
|
||||||
|
folder=directory(RESOURCES + f"WDPA_WDOECM_{bYYYY}_marine"),
|
||||||
|
output:
|
||||||
|
gpkg=RESOURCES + f"WDPA_WDOECM_{bYYYY}_marine.gpkg",
|
||||||
|
run:
|
||||||
|
shell("cp {input} {params.zip}")
|
||||||
|
shell("unzip -o {params.zip} -d {params.folder}")
|
||||||
|
for i in range(3):
|
||||||
|
# vsizip is special driver for directly working with zipped shapefiles in ogr2ogr
|
||||||
|
layer_path = f"/vsizip/{params.folder}/WDPA_WDOECM_{bYYYY}_Public_marine_shp_{i}.zip"
|
||||||
|
print(f"Adding layer {i+1} of 3 to combined output file.")
|
||||||
|
shell("ogr2ogr -f gpkg -update -append {output.gpkg} {layer_path}")
|
||||||
|
|
||||||
|
|
||||||
if config["enable"]["retrieve"]:
|
if config["enable"]["retrieve"]:
|
||||||
|
|
||||||
rule retrieve_monthly_co2_prices:
|
rule retrieve_monthly_co2_prices:
|
||||||
|
Loading…
Reference in New Issue
Block a user