Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

TCIA Data Retriever for Python

This package bundles the headless TCIA Data Retriever executable with a small Python interface. It uses the same Go transfer core as the desktop application. It has no Python runtime dependencies and does not require a desktop, Go, Node, or a separately installed executable. Installation does not grant controlled data access.

The proposed distribution name is tcia-data-retriever; publication and name availability must be confirmed by maintainers before announcing installation. After publication, install a supported platform wheel with:

python -m pip install --only-binary=:all: tcia-data-retriever
tcia-data-retriever --help

Read the TCIA data usage policy before explicitly accepting it:

from tcia_data_retriever import download

report = download("manifest.csv", "./images", accept_data_policy=True)
print(report["downloaded"], report["failed"])

For restricted data, obtain your own approved JSON key and pass only its path:

report = download(
    "controlled_manifest.csv", "./images",
    accept_data_policy=True, credential_file="/path/to/credentials.json",
)

Python and CLI downloads read the supplied key for that invocation only. They do not copy it into TDR's saved-auth location, reuse a saved GUI key, or open the GUI credential prompt. Supply credential_file= each time controlled access is needed. The desktop GUI retains its existing remembered-credential behavior. Existing GUI credentials are neither modified nor removed by CLI runs. Neither credentials nor temporary storage URLs are included in completion reports.

The published 0.1.0rc1 predates these changes and may save a copy of a supplied key. These improvements require a later build of the package.

download() accepts a local manifest, output directory, processes (default 8), max_retries (default 3), skip_existing (default false), and directory_mode (descriptive or classic). It relays live progress to Python's own output streams so notebooks can display it, closes child stdin, and returns a schema-versioned summary. Failed or partial runs raise DownloadError with returncode and, when available, report. Missing or malformed reports are failures even if the process returned zero. Ctrl-C requests cancellation, then re-raises KeyboardInterrupt.

Progress remains enabled. The progress="auto" default uses an updating line in a terminal and plain-text snapshots in a notebook or redirected log. Use progress="plain" to force readable newline output or progress="terminal" to force the live terminal display. Overall counts describe completed work items; the active-file bytes/percentage show progress within a large transfer. Failures and cancellation remain visible and retain their existing reports and exceptions. Progress output is streamed, not accumulated as an in-memory log.

For all existing CLI options use the console command or python -m tcia_data_retriever. --help and --version need no policy acceptance. Transfers require --accept-data-policy; interactive password prompts are unsupported. build_info() returns package version, source commit and binary SHA256. executable() resolves the packaged executable without searching PATH. No executable is fetched or updated at runtime.

This package is independent of tcia_utils. A future optional tcia_utils extra can depend on it after the TDR interface is merged and compatible wheels are published. Existing Python transfer routes are not automatically replaced.

See CLI progress and credential lifetime for the GUI/CLI distinction and progress rendering details.

Metadata

Release files for tcia-data-retriever 0.1.0rc2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for tcia-data-retriever 0.1.0rc2
File Actions
tcia_data_retriever-0.1.0rc2-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details for tcia_data_retriever-0.1.0rc2-py3-none-win_amd64.whl
tcia_data_retriever-0.1.0rc2-py3-none-manylinux_2_17_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details for tcia_data_retriever-0.1.0rc2-py3-none-manylinux_2_17_x86_64.whl
tcia_data_retriever-0.1.0rc2-py3-none-macosx_11_0_x86_64.whl Python 3 none macOS 11.0+ x86-64 Details for tcia_data_retriever-0.1.0rc2-py3-none-macosx_11_0_x86_64.whl
tcia_data_retriever-0.1.0rc2-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details for tcia_data_retriever-0.1.0rc2-py3-none-macosx_11_0_arm64.whl

Total release size: 364.7 MB

Release files / tcia_data_retriever-0.1.0rc2-py3-none-win_amd64.whl

Download URL tcia_data_retriever-0.1.0rc2-py3-none-win_amd64.whl
Size 91.4 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
8a9c83bec9c3937eafc468341f7fe5daef35cdca8ed26cc6236ed6ec9505337a
BLAKE2b-256 checksum
How to use checksums
0dc44b028b9d5110819f9a76d1687c4d0a53a06e1aff20d71d44921ce325d6a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.7

Release files / tcia_data_retriever-0.1.0rc2-py3-none-manylinux_2_17_x86_64.whl

Download URL tcia_data_retriever-0.1.0rc2-py3-none-manylinux_2_17_x86_64.whl
Size 91.1 MB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
e6be91a768b653422f32644d6b8f1928685346c8ecf6450d0b69c83cf92b1a4e
BLAKE2b-256 checksum
How to use checksums
7a087b9b7209c200f6a5411c166f40ae198cf89b86b9616bc67e38d8c98434cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.7

Release files / tcia_data_retriever-0.1.0rc2-py3-none-macosx_11_0_x86_64.whl

Download URL tcia_data_retriever-0.1.0rc2-py3-none-macosx_11_0_x86_64.whl
Size 91.4 MB
Tags Python 3 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
234bae984c03f839e82d1e2b4c691a6c81f2daf7128340906f8c373d545c6c54
BLAKE2b-256 checksum
How to use checksums
75453a39d57c03856525e417947055c2130b2f7910eb10f522603dac3d48a3a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.7

Release files / tcia_data_retriever-0.1.0rc2-py3-none-macosx_11_0_arm64.whl

Download URL tcia_data_retriever-0.1.0rc2-py3-none-macosx_11_0_arm64.whl
Size 90.8 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
175098fb61267800c7ba177832beb4b50c602b52de05ae49c5ce516196652c5a
BLAKE2b-256 checksum
How to use checksums
a6601a6f418f6fc70772503b9c380c4f80a0a57499628c65450166e9f56a5928
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.7

Security for tcia-data-retriever 0.1.0rc2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page