Skip to main content

TurboDL is an extremely smart, fast, and efficient download manager with several automations.

Project description

TurboDL

PyPI - Version PyPI - Downloads PyPI - Code Style PyPI - Format PyPI - Python Compatible Versions

TurboDL is an extremely smart, fast, and efficient download manager with several automations.

  • Built-in sophisticated download acceleration technique.
  • Uses a sophisticated algorithm to calculate the optimal number of connections based on file size and connection speed.
  • Retry failed requests efficiently.
  • Automatically detects file information before download.
  • Automatically handles redirects.
  • Automatically uses RAM buffer to speed up downloads and reduce disk I/O overhead.
  • Supports post-download hash verification.
  • Accurately displays a beautiful progress bar.

Installation (from PyPI)

pip install --upgrade turbodl  # Install the latest version of TurboDL

Example Usage

Inside a Python script (Basic Usage)

from turbodl import TurboDL


turbodl = TurboDL()
turbodl.download(
    url="https://example.com/file.txt",  # Your download URL
    output_path="path/to/file"  # The file/path to save the downloaded file to or leave it empty to save it to the current working directory
)

turbodl.output_path  # The absolute path to the downloaded file

Inside a Python script (Advanced Usage)

from turbodl import TurboDL


turbodl = TurboDL(
    max_connections="auto",
    connection_speed_mbps=100,
    show_progress_bar=True,
)
turbodl.download(
    url="https://example.com/file.txt",
    output_path="path/to/file",
    pre_allocate_space=False,
    use_ram_buffer="auto",
    overwrite=True,
    headers=None,
    timeout=None
    expected_hash=None,
    hash_type="md5",
)

turbodl.output_path  # The absolute path to the downloaded file

From the command line

turbodl --help  # Show help for all commands
turbodl download --help  # Show help for the download command

turbodl download [...] https://example.com/file.txt path/to/file  # Download the file
CLI Demo

TurboDL CLI Demo

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, fork the repository and create a pull request. You can also simply open an issue and describe your ideas or report bugs. Don't forget to give the project a star if you like it!


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

turbodl-0.5.0.tar.gz (19.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

turbodl-0.5.0-py3-none-any.whl (21.8 kB view details)

Uploaded Python 3

File details

Details for the file turbodl-0.5.0.tar.gz.

File metadata

  • Download URL: turbodl-0.5.0.tar.gz
  • Upload date:
  • Size: 19.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for turbodl-0.5.0.tar.gz
Algorithm Hash digest
SHA256 e22a5670e7de51df5c9ccf8a797a43b40b981d960848c3bf16ea7146be15b0fe
MD5 40db2dfc5ea4256b22a4df5f4cb0d996
BLAKE2b-256 ddf6d89dd5f055585eb1231e0a50d76c86f5f8524c346f414eb482f33883c9ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for turbodl-0.5.0.tar.gz:

Publisher: release.yaml on henrique-coder/turbodl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file turbodl-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: turbodl-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 21.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for turbodl-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b23ca7e2519066f8e92ac591a3f39902407e289ee23a34ab2b2ea7d5f0687ca8
MD5 466ef43288c1d1e245f4e3f83357e7ce
BLAKE2b-256 5b950a1148627a316b3bde91ac9673be41621dd0d6a3bbeeb27e8eea7539e8cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for turbodl-0.5.0-py3-none-any.whl:

Publisher: release.yaml on henrique-coder/turbodl

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page