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,
    custom_headers=None,
    timeout=None
)
turbodl.download(
    url="https://example.com/file.txt",
    output_path="path/to/file",
    pre_allocate_space=False,
    use_ram_buffer="auto",
    overwrite=True,
    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.1.tar.gz (16.9 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.1-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: turbodl-0.3.1.tar.gz
  • Upload date:
  • Size: 16.9 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.1.tar.gz
Algorithm Hash digest
SHA256 4b04c8e226b582ef4574f4894551aa3444bbe95242d891e0485ac043533f987b
MD5 d536cdc8f0a811fea6bdaedcfb0477d5
BLAKE2b-256 80e61687ae3ffdcb8f6ad5491bc6795dffb13a6a8cdd5b4d39c90b52feca75b4

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: turbodl-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 18.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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6fa51761376783534f4ecb5d3236a8b95ae7e0000ab0819f18f45e8a2a23e6a2
MD5 d0d6ad975617beb856283887ceb343eb
BLAKE2b-256 149bdd2502ac25e4210db2909d11153d715eb0c84027ccfe58e6d65f503e3994

See more details on using hashes here.

Provenance

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