Python Smart Download Manager – pySmartDL

pySmartDL strives to be a full-pleged smart download manager for Python. Main features:

  • Built-in download acceleration (with the multipart downloading technique).
  • Mirrors support.
  • Pause/Unpause feature.
  • Hash checking.
  • Non-blocking, shows progress bar, download speed and eta.
  • Python 3 Support

Usage

Download is as simple as creating an instance and launching it:

import os
from pySmartDL import SmartDL

url = "http://mirror.ufs.ac.za/7zip/9.20/7za920.zip"
dest = "C:\\Downloads\\" # or '~/Downloads/' on linux

obj = SmartDL(url, dest)
obj.start()
# [*] 0.23 Mb / 0.37 Mb @ 88.00Kb/s [##########--------] [60%, 2s left]

path = obj.get_dest()

Requirements

  • Python 2.6 or greater.
  • Python 3.0 or greater.
  • For versions before Python 3.2, the futures backport package is also required.

Indices and tables