import argparse | |
from pygbif import occurrences as occ | |
import json | |
licenses = {'http://creativecommons.org/licenses/by-nc/4.0/legalcode':'CC BY-NC 4.0'} | |
if __name__ == '__main__': | |
parser = argparse.ArgumentParser() | |
parser.add_argument("inputfile") | |
parser.add_argument("--download_id", type=str) | |
parser.add_argument("outputfile") | |
args = parser.parse_args() | |
datasette_metadata = None | |
with open(args.inputfile, 'r') as f_in: | |
datasette_metadata = json.load(f_in) | |
gbif_metadata = occ.download_meta(key = args.download_id) | |
license_url = gbif_metadata['license'] | |
if license_url in licenses: | |
datasette_metadata['license'] = licenses[license_url] | |
datasette_metadata['license_url'] = license_url | |
datasette_metadata['source_url'] = 'https://doi.org/{}'.format(gbif_metadata['doi']) | |
datasette_metadata_json = json.dumps(datasette_metadata, indent=4) | |
with open(args.outputfile, 'w') as f_out: | |
f_out.write(datasette_metadata_json) |