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_mbps=80,
    show_progress_bar=True,
    save_log_file=False,
)
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
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.3.4.tar.gz (13.4 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.4-py3-none-any.whl (15.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: turbodl-0.3.4.tar.gz
  • Upload date:
  • Size: 13.4 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.4.tar.gz
Algorithm Hash digest
SHA256 0247f4744844531616c0f6cc18908aac7b2b02e3fb600818f63cb35ea5510db6
MD5 d6a2fcd37454dd30f9132ae109ed06f6
BLAKE2b-256 aa8cf71df447dc619fcaa85b6d9fd6231e53d2fe16fc3e2c2115f7b84ab12568

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: turbodl-0.3.4-py3-none-any.whl
  • Upload date:
  • Size: 15.5 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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 6fa83cd38ee965b2460db695ee60ea1f784c5b20ca9d1b507a25c3aabeefb3fd
MD5 9b039fa8fb7fe0ca66e91c4d0268a374
BLAKE2b-256 5272bae3273ef6814382ddcca0a4384d732ffd3abcb74c2d083f3c07dd74d229

See more details on using hashes here.

Provenance

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