Metadata-Version: 2.1
Name: async_download
Version: 1.4.0
Summary: Uses coroutines to download files
Home-page: https://github.com/danwald/async_download
Author: danny crasto
Author-email: danwald79@gmail.com
License: MIT license
Keywords: async_download
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: AUTHORS.rst
Requires-Dist: Click >=8.1.7
Requires-Dist: aiohttp >=3.8.6
Requires-Dist: more-itertools >=10.1.0
Requires-Dist: pip >=22
Requires-Dist: tqdm >=4.66.1
Provides-Extra: dev
Requires-Dist: Sphinx >=1.8.5 ; extra == 'dev'
Requires-Dist: black >=23.9.1 ; extra == 'dev'
Requires-Dist: bump2version >=1.0.1 ; extra == 'dev'
Requires-Dist: coverage >=7.3.2 ; extra == 'dev'
Requires-Dist: flake8 >=6.1.0 ; extra == 'dev'
Requires-Dist: pip >=22.3.1 ; extra == 'dev'
Requires-Dist: tox >=4.11.3 ; extra == 'dev'
Requires-Dist: twine >=4.0.2 ; extra == 'dev'
Requires-Dist: watchdog >=3.0.0 ; extra == 'dev'
Requires-Dist: wheel >=0.33.6 ; extra == 'dev'
Provides-Extra: testing
Requires-Dist: isort >=5.12.0 ; extra == 'testing'
Requires-Dist: pre-commit >=3.4.0 ; extra == 'testing'
Requires-Dist: pytest >=7.4.2 ; extra == 'testing'

Async download
--------------

![download](https://img.shields.io/pypi/v/async_download.svg "download") ![travis](https://img.shields.io/travis/danwald/async_download.svg) ![documentation status](https://readthedocs.org/projects/async-download/badge/?version=latest)


Uses coroutines to download urls

Note: Greedy and built for speed. [10K cdn hosted urls; 0.5GB Total data; <5 minutes; M1 laptop]

Usage
-----

```
Usage: async_download [COMMAND] <OPTIONS>
Commands:
    headers - hit urls with the head request
    download - download urls

`headers` Options:
  --header TEXT         Headers to extract (default: Content-Length, Server)
  --batch-size INTEGER  number of concurrent requests (default: 1000)
  --help                Show this message and exit.

`download` Options:
  --batch-size INTEGER  number of concurrent requests (default: 1000)
  --execute             required to do something
  --help                Show this message and exit.
```

* Free software: MIT license
* Documentation: https://async-download.readthedocs.io.


Install & Run
-------------
```bash
pipx install async-download
async_download --help
```

Development
-----------
```bash
python -mvenv .venv --prompt .
. ./.venv/bin/activate
pip install --editable .[testing]
make test
```

Credits
-------

This package was created with Cookiecutter and the `audreyr/cookiecutter-pypackage` project template.

- [Cookiecutter](https://github.com/audreyr/cookiecutter)
- [audreyr/cookiecutter-pypackage](https://github.com/audreyr/cookiecutter-pypackage)

The main loop was taken from
- [A Twilio tuitorial](https://www.twilio.com/blog/asynchronous-http-requests-in-python-with-aiohttp)


### History

#### 1.2.0 (2022-08-29)
* better progress bars.
#### 1.1.0 (2022-08-29)
* add a validate option.
#### 1.0.0 (2022-08-29)
* First release on PyPI.
