Metadata-Version: 2.1
Name: lazynet
Version: 0.2.2
Summary: Perform lazy-evaluated HTTP requests
License: MIT
Author: Joe Nap
Requires-Python: >=3.12,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: aiodns (>=3.1,<4.0)
Requires-Dist: aiohttp (>=3.9,<4.0)
Requires-Dist: async-timeout (>=4.0,<5.0)
Requires-Dist: bump2version (>=1.0.1,<2.0.0)
Requires-Dist: pycares (>=4.4,<5.0)
Description-Content-Type: text/markdown

# lazynet

Are you lazy? Do you need to make lots of HTTP requests?

Well, look no further. lazynet is for you!

lazynet performs lazy-evaluated, asynchronous HTTP requests. It is ideal for making many HTTP requests for data at rest, fast and efficiently in a functional manner.

It uses the `asyncio` and `aiohttp` libraries, using coroutines under the hood. It also hides this complexity from you, keeping you in a synchronous mindset.

## Usage

```python
import lazynet

# This is a generator
urls = (f'https://my.domain/object/{id}' for id in range(10))

# responses is also a generator
responses = lazynet.get(urls)

# nothing is evaluated until this loop
for response in responses:
    print(response)
```

## Performance
lazynet can currently achieve a rate of about 1300 requests per second.

## History

2019: Alpha status. lazynet was developed as an experiment and proof of concept.

2023: Beta Status. Updated to use current asyncio interface.

