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 -U 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
)

print(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=80,
    show_progress_bars=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",
)

print(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

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.3.2.tar.gz (18.3 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.3.2-py3-none-any.whl (19.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for turbodl-0.3.2.tar.gz
Algorithm Hash digest
SHA256 06c64054f0f034990c5168e35255a51d7e956c4ed9b6548c74164ac0d5556de4
MD5 7f0ffe057b51cdaa530b5610ac25102d
BLAKE2b-256 23fadecee7c8fa30dc46b24da88a90e095d8e881595e8c28528c42930207db06

See more details on using hashes here.

Provenance

The following attestation bundles were made for turbodl-0.3.2.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.3.2-py3-none-any.whl.

File metadata

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

File hashes

Hashes for turbodl-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6dde051422c4cb97272b9449ec3d2edf7aa012615805ce640dabf54f6e60cacc
MD5 4845607d238ea2c17a58cac637ee8ccf
BLAKE2b-256 064b9d406549aafc64caacfc9b695cc0dfc4de50d30af13e910919a4dc3e138e

See more details on using hashes here.

Provenance

The following attestation bundles were made for turbodl-0.3.2-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