satkit 0.3.14

Satellite Toolkit
Documentation
import os
from pathlib import Path
import requests


def download_from_json(jval, dname, url):
    if isinstance(jval, dict):
        for key, val in jval.items():
            dirname = os.path.join(dname, key)
            Path(dirname).mkdir(exist_ok=True, parents=True)
            download_from_json(val, dirname, url + "/" + key)
    elif isinstance(jval, list):
        for val in jval:
            download_from_json(val, dname, url)
    elif isinstance(jval, str):
        fname = os.path.join(dname, jval)
        if not os.path.exists(fname):
            dlurl = url + "/" + jval
            print(f"Downloading from {dlurl} to {fname}")
            r = requests.get(url + "/" + jval)
            open(fname, "wb").write(r.content)
        else:
            print(f"{fname} exists; skipping")