Skip to main content

Python downloader with progress

Project description

Homura

Homura (ほむら) is a Python downloader with progress, which can be used to download large files.

It is named after Homura Akemi.

Features

  • PycURL based
  • Resume downloads (if server supports byte ranges on the resource)
  • Support for requests.Session

Installation

Homura depends on PycURL. Install dependencies before installing the python package:

Ubuntu

$ sudo apt-get install libcurl4-openssl-dev python-dev

Fedora

$ sudo yum groupinstall "Development Tools"
$ sudo yum install libcurl libcurl-devel python-devel

Then, install homura

$ pip install homura

Usage

The simplest usage is to import the utility function download:

>>> from homura import download
>>> download('http://download.thinkbroadband.com/200MB.zip')
    3%      6.2 MiB     739.5 KiB/s            0:04:28 ETA

To specify path for downloaded file:

>>> download(url='http://download.thinkbroadband.com/200MB.zip',
             path='/path/to/big.zip')

You can specify extra headers as a dictionary:

>>> download(url='http://example.com', headers={'API-Key': '123456'})

Or you can work with Session objects of the requests library:

>>> import requests
>>> s = requests.Session()
# Do some work with `s` and send requests
>>> download(url='http://example.com', session=s)

Project details


Download files

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

Files for homura, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size homura-0.1.0.tar.gz (5.2 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page