def dump_json()

in probe_scraper/runner.py [0:0]


def dump_json(data: Any, out_dir: Path, file_name: str) -> Path:
    # Make sure that the output directory exists. This also creates
    # intermediate directories if needed.
    try:
        os.makedirs(out_dir)
    except OSError as e:
        if e.errno != errno.EEXIST:
            raise

    def date_serializer(o):
        if isinstance(o, datetime.datetime):
            return o.isoformat()

    path = out_dir / file_name
    print(f"  {path}")
    path.write_text(
        json.dumps(
            data,
            sort_keys=True,
            indent=2,
            separators=(",", ": "),
            default=date_serializer,
        )
    )
    return path