Metadata-Version: 2.1
Name: aiohttp-raw
Version: 0.1.0
Summary: HTTP communication through raw sockets using aiohttp for RFC compliance testing
Home-page: https://github.com/realgam3/aiohttp-raw
Author: Tomer Zait (realgam3)
Author-email: realgam3@gmail.com
License: Apache 2.0
Project-URL: Source, https://github.com/realgam3/aiohttp-raw
Platform: any
Classifier: Environment :: Web Environment
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Provides-Extra: speedups
Provides-Extra: socks
Provides-Extra: speedups-socks
License-File: LICENSE

# aiohttp-raw
[![PyPI version](https://img.shields.io/pypi/v/aiohttp-raw)](https://pypi.org/project/aiohttp-raw/)
[![Downloads](https://pepy.tech/badge/aiohttp-raw)](https://pepy.tech/project/aiohttp-raw)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/aiohttp-raw)  

Use [aiohttp](https://docs.aiohttp.org/en/stable/) to send HTTP raw sockets (To Test RFC Compliance)

![Logo](https://raw.githubusercontent.com/realgam3/aiohttp-raw/main/assets/img/aiohttp-raw-logo.png)

## Usage
```python
import asyncio
import aiohttp_raw


async def main():
    req = b"GET /get HTTP/1.1\r\nHost: httpbin.org\r\n\r\n"
    async with aiohttp_raw.ClientSession() as session:
        async with session.raw("http://httpbin.org/get", data=req) as response:
            print(await response.text())

loop = asyncio.new_event_loop()
loop.run_until_complete(main())
```

## Installation
### Prerequisites
* Python 3.8+

```shell
pip3 install aiohttp-raw
```

```shell
# speedups
pip install aiohttp[speedups]
````

```shell
# socks
pip install aiohttp[socks]
```

```shell
# speedups-socks
pip install aiohttp[speedups-socks]
```
