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)