mario.download_exiobase3(
path: str | Path,
*,
years,
system: str | None = 'ixi',
table: str = 'IOT',
version: str = '3.8.2',
extract: bool = True,
keep_archives: bool = False,
overwrite: bool = False,
) → dict[str, object]#

Download a selected monetary EXIOBASE 3 release from Zenodo.

Interrupted downloads are resumed from a .part file and checked against Zenodo’s published size and checksum before extraction. Existing archives are reused only when they pass the same checks.

Parameters:
  • path (str or Path) – destination directory where downloaded archives and extracted folders should be stored.

  • years (int or iterable of int) – years to download.

  • system (str, optional) – required for table="IOT". One of "ixi" or "pxp".

  • table (str, optional) – one of "IOT" or "SUT".

  • version (str, optional) – one of "3.11.2", "3.10.2", "3.10.1", "3.9.6", "3.9.5", "3.9.4" or "3.8.2".

  • extract (bool, optional) – when True extract zip archives after download.

  • keep_archives (bool, optional) – when extracting, keep the downloaded zip archives.

  • overwrite (bool, optional) – overwrite existing files/directories when present.

EXIOBASE 3.11.2 and interrupted downloads#

Select the release and system explicitly, for example:

files = mario.download_exiobase3(
    path="data/exiobase",
    years=[2022],
    version="3.11.2",
    system="ixi",
)

Use system="pxp" for product-by-product tables. A failed transfer keeps its downloaded bytes in a .part file. Run the same call again with the default overwrite=False to resume it. MARIO makes up to six attempts per call and checks Zenodo’s published size and checksum before extracting or reusing the archive. overwrite=True starts a fresh download.